Cyclone IV 器件的配置和远程系统更新

Cyclone IV 器件的配置和远程系统更新
8. Cyclone IV器件的配置和远程系统更
新
November 2011
CYIV-51008-1.4
CYIV-51008-1.4
本章节介绍了 Cyclone® IV 器件的配置和远程系统更新。Cyclone IV (Cyclone IV GX
和 Cyclone IV E)器件使用 SRAM 单元存储配置数据。由于 SRAM 内存的易失性,每次
器件上电后,都必须将配置数据下载到 Cyclone IV 器件中。
使用下面其中的一个配置方案配置 Cyclone IV 器件:
■
主动串行 (AS)
■
主动并行 (AP)(仅支持 Cyclone IV E 器件)
■
被动串行 (PS)
■
快速被动并行(FPP)(不支持 EP4CGX15、EP4CGX22 和 EP4CGX30 [ 除 F484 封装之外 ]
器件)
■
JTAG
Cyclone IV 器件提供以下配置功能:
■
配置数据解压缩 (“ 配置数据解压缩 ” 第 8-2 页)
■
远程系统更新 (“ 远程系统更新 ” 第 8-70 页)
系统设计师面临着严峻的挑战,如缩短设计周期、不断发展的标准和在偏远地区的系
统部署。Cyclone IV 器件利用固有的重编程和专用电路来执行远程系统更新,帮助克
服了这些挑战。远程系统更新有助于实现功能的增强和错误的修复,无需昂贵的成本,
减少产品上市的时间和延长产品的生命周期。
配置
本节介绍了 Cyclone IV 器件的配置,包括以下几方面内容:
■
“ 配置功能 ” 第 8-2 页
■
“ 配置要求 ” 第 8-3 页
■
“ 配置过程 ” 第 8-6 页
■
“ 配置方案 ” 第 8-8 页
■
“AS 配置 (串行配置器件)” 第 8-10 页
■
“AP 配置 (支持闪存)” 第 8-21 页
■
“PS 配置 ” 第 8-32 页
■
“FPP 配置 ” 第 8-39 页
■
“JTAG 配置 ” 第 8-45 页
© 2011 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as trademarks or service marks
are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance of its semiconductor products to current specifications
in accordance with Altera's standard warranty, but reserves the right to make changes to any products and services at any time without notice. Altera assumes no responsibility or
liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised
to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services.
Cyclone IV 器件手册,
卷1
2011 年 11 月
ISO
9001:2008
Registered
Subscribe
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–2
■
“ 器件配置管脚 ” 第 8-61 页
配置功能
表 8-1 列出了用于每种配置方案中的配置方法。
表 8-1. Cyclone IV 器件的配置功能
配置方案
配置方法
解压缩
远程系统更新 (1)
v
AS
串行配置器件
v
AP
所支持闪存 (2)
—
v
内置闪存的外部主机
v
v(3)
下载电缆
v
—
内置闪存的外部主机
—
v(3)
内置闪存的外部主机
—
—
下载电缆
—
—
PS
FPP
基于 JTAG 的设置
表 8-1 注释:
(1) 当您使用远程系统更新功能时,支持远程更新模式。您可以在 Quartus® II 软件的选项设置中,启用或禁用远程更新模式。
(2) 要了解关于 Numonyx 商用并行闪存系列支持的器件的详细信息,请参阅第 8-22 页表 8-9。
(3) 远程更新模式由外部支持,使用 Quartus II 软件的并行闪存加载 (PFL)。
配置数据解压缩
Cyclone IV 器件支持配置数据解压缩,从而节省配置的存储空间和时间。这一功能允
许您将压缩配置数据存储在配置器件或者其它内存,然后发送压缩比特流到
Cyclone IV 器件。在配置过程中,Cyclone IV 器件实时解压缩比特流并编程 SRAM 单
元。
1
初步数据表明,压缩减少 35% 至 55% 大小的配置比特流。
当您启用压缩时,Quartus II 软件生成含有压缩配置数据的配置文件。这一压缩文件
减少了配置器件或闪存的存储需求,并且节省了发送比特流至 Cyclone IV 器件所需的
时间。一个 Cyclone IV 器件解压缩一个配置文件所需的时间小于发送配置数据到该器
件所需的时间。对于 Quartus II 软件的 Cyclone IV 器件比特流,有两种启用压缩的
方法:
■
在设计编译之前 (通过 Compiler Settings 菜单)
■
在设计编译之后 (通过 Convert Programming Files 对话框)
要在 Quartus II 软件的编译设置项目上启用压缩,请执行以下步骤:
1. 在 Assignments 菜单中,单击 Device。跳转至 Settings 对话框。
2. 单击 Device and Pin Options。跳转至 Device and Pin Options 对话框。
3. 单击 Configuration 标签。
4. 打开 Generate compressed bitstreams。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–3
5. 单击 OK。
6. 在 Settings 对话框,单击 OK。
当从 Convert Programming Files 对话框创建编程文件时,您可以启用压缩功能。要
启用压缩功能,请执行以下步骤:
1. 在 File 菜单中,单击 Convert Programming Files。
2. 在 Output programming file 的 Programming file type 列表中,选择您所需的文
件类型。
3. 如果您选择 Programmer Object File (.pof),您必须在 Configuration device 列
表中指定配置器件。
4. 在 Input files to convert,选择 SOF Data。
5. 单击 Add File 浏览 Cyclone IV 器件 SRAM 的目标文件 (.sof)。
6. 在 Convert Programming Files 对话框中,选择您在 SOF Data 添加的 .pof,然后
单击 Properties。
7. 在 SOF File Properties 对话框 , 打开 Compression 选项。
当多个 Cyclone IV 器件级联时,您可以在链中为每个器件选择性地启用压缩功能。
图 8-1 显示了一条链中的两个 Cyclone IV 器件。第一个器件已启用压缩功能并且从配
置器件上接收压缩比特流。第二个器件已禁用压缩功能并且接收未压缩的数据。您可
以在 Convert Programming Files 对话框上为这个设置生成编程文件。
图 8-1. 相同配置文件中的压缩与未压缩配置数据
Serial Data
Serial Configuration
Device
Compressed
Uncompressed
VCC
Decompression
Controller
10 kΩ
Cyclone IV
Device
nCE
Cyclone IV
Device
nCEO
nCE
nCEO
Not Connected (N.C.)
GND
配置要求
本节介绍了 Cyclone IV 器件的配置要求,包括以下几方面内容:
■
“ 上电复位 (POR)电路 ” 第 8-4 页
■
“ 配置文件容量 ” 第 8-4 页
■
“ 上电 ” 第 8-6 页
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–4
上电复位 (POR)电路
POR 电路保持器件在复位状态,直到供电电压电平在器件上电期间稳定。器件上电后,
该器件不会释放 nSTATUS 直到 VCCINT、VCCA 和 VCCIO (配置与 JTAG 管脚所在的 I/O
bank)都高于器件的 POP 跳闸点。VCCINT 和 VCCA 在器件上电后监测掉电条件。
1
VCCA 是锁相环 (PLL) 的模拟电源。
在某些应用中,器件的快速唤醒对于开始运行是有必要。Cyclone IV 器件提供的快速
POR 时间选项以支持快速唤醒时间应用。快速 POR 时间选项与标准 POR 时间选项相比有
更严格的上电要求。您可以选择快速选项或者 MSEL 管脚设置的标准 POR 选项。
1
如果您的系统超过快速或者标准 POR 时间,您必须保持 nCONFIG 低电平直到所有的供电
稳定为止。
f 要了解关于 POR 规范的详细信息,请参阅 Cyclone IV Device Datasheet。
f 要了解关于唤醒时间和POR电路的详细信息,请参阅 Power Requirements for Cyclone
IV Devices 章节。
配置文件容量
表 8-2 列出了 Cyclone IV 器件的未压缩配置文件的正确文件容量值。如果要计算多个
器件的配置文件存储所需的空间,将每个器件的文件尺寸进行加总得到。
表 8-2. Cyclone IV 器件的未压缩原始二进制文件 (.rbf)尺寸
器件
Cyclone IV E
Cyclone IV 器件手册,
卷 1
(1/2)
数据大小 (位)
EP4CE6
2,944,088
EP4CE10
2,944,088
EP4CE15
4,086,848
EP4CE22
5,748,552
EP4CE30
9,534,304
EP4CE40
9,534,304
EP4CE55
14,889,560
EP4CE75
19,965,752
EP4CE115
28,571,696
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–5
表 8-2. Cyclone IV 器件的未压缩原始二进制文件 (.rbf)尺寸
器件
数据大小 (位)
EP4CGX15
3,805,568
EP4CGX22
7,600,040
EP4CGX30
Cyclone IV GX
(2/2)
7,600,040
24,500,000 (1), (2)
EP4CGX50
24,500,000 (1)
EP4CGX75
24,500,000 (1)
EP4CGX110
39,425,016
EP4CGX150
39,425,016
表 8-2 注释:
(1) 这些值为初始值。
(2) 仅适用于 F484 封装。
使用表 8-2 中的数据,在设计编译之前估计文件的容量。不同的配置文件格式,如十
六进制 (.hex)或表格的文本文件 (.ttf)格式,有不同的文件尺寸。然而,对于任
何特定版本的 Quartus II 软件,任何设计针对相同的器件都具有相同的未压缩配置文
件尺寸。如果您使用压缩功能,每次编译后的文件尺寸都有所不同,这是由于压缩率
取决于设计。
f 要了解关于设置器件的配置选项或者创建配置文件的详细信息,请参阅配置手册第 2 卷
的 Software Settings 部分。
配置和 JTAG 管脚的 I/O 要求
Cyclone IV 器件使用 TSMC 60-nm low-k 电介质工艺制造。虽然 Cyclone IV 器件在
I/O 缓冲器中使用 TSMC 2.5-V 晶体管技术,该器件通过遵循特定的要求中可以兼容并
能够连接 2.5、3.0 和 3.3-V 的配置电压标准。
所有的 I/O 输入必须保持 4.1 V 的最大交流电压。在一个 AS 配置方案中使用串行配置
器件时,您必须为 DATA[0] 管脚连接一个 25-Ω 的串联电阻。在多器件配置为 AS、
AP、FPP 和 PS 配置方案级联 Cyclone IV 器件系列时,您必须为 DATA 和 DCLK 管脚,连
接主器件和从器件之间的中继缓冲器。在多器件配置中使用 JTAG 配置方案时,如果
TDO输出驱动器是一个非 Cyclone IV 器件,那么在 TDO-TDI路径的两端各连接 25-Ω 的电
阻器。
中继缓冲器的输出电阻和 TDO 路径在所有的情况下必须符合最大过冲方程,显示在公
式 8-1 中。
公式 8-1. (1)
0.8Z O ≤ R E ≤ 1.8Z O
公式 8-1 注释:
(1) ZO 是传输线的阻抗,RE 是输出缓冲器的等效电阻。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–6
配置过程
本节介绍了 Cyclone IV 器件的配置要求,包括以下几方面内容:
■
“ 上电 ” 第 8-6 页
■
“ 复位 ” 第 8-6 页
■
“ 配置 ” 第 8-6 页
■
“ 配置错误 ” 第 8-7 页
■
“ 初始化 ” 第 8-7 页
■
“ 用户模式 ” 第 8-7 页
f 要了解关于 Altera® FPGA 配置周期状态器的详细信息,请参阅配置手册第 1 卷的
Configuring Altera FPGAs 章节。
上电
如果器件是从关电状态上电,VCCINT、VCCA 和 VCCIO (配置与 JTAG 管脚所在的 I/O
bank)必须上电到适当的电平以便于器件从 POR 退出。
复位
上电后,Cyclone IV 器件遍历 POR。POR 延迟取决于 MSEL 管脚的设置,这对应于您的
配置方案。在 POR 过程中,器件复位, nSTATUS 和 CONF_DONE 保持低电平,以及三态
所有的用户 I/O 管脚 (仅适用于 PS 和 FPP 配置方案)。
1
要为 AS 和 AP 的配置方案三态配置总线,您必须结合高 nCE 和低 nCONFIG。
用户 I/O 管脚和双用 I/O 管脚有弱上拉电阻器,它在配置之前或期间总是处于启用状
态 (在 POR 之后)。当器件退出 POR 后,所有的用户 I/O 管脚继续处于三态。当
nCONFIG 为低电平时,器件处于复位状态。当 nCONFIG 变高时,器件退出复位状态,并
且释放开漏 nSTATUS 管脚,然后被外部 10-kΩ 上拉电阻器拉高。 nSTATUS 被释放后,
器件准备接收配置数据以及开始配置阶段。
f 有关配置之前或期间的 I/O 管脚的弱上拉电阻值的详细信息,请参阅 Cyclone IV
Device Datasheet 章节。
配置
每个 DCLK 周期的配置数据被锁存在 Cyclone IV 器件上。然而,每个方案的数据总线
的宽度和配置所需的时间有所不同。在器件接收所有的配置数据后,器件开始释放开
漏 CONF_DONE 管脚,然后被外部 10-kΩ 上拉电阻拉高。 CONF_DONE 管脚上的一个由低
至高的跳变表明已经完成配置,并且可以开始运行器件的初始化。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–7
您可以通过拉低 nCONFIG 管脚开始进行重配置。 nCONFIG 管脚必须处于低电平至少
500 ns。当 nCONFIG 拉低时,Cyclone IV 器件被复位。Cyclone IV 器件也拉低
nSTATUS和 CONF_DONE ,所有的 I/O 管脚均处于三态。当 nCONFIG返回到逻辑高电平并且
由 Cyclone IV 器件释放 nSTATUS 时,重配置开始运行。
配置错误
如果在配置过程中出现错误,Cyclone IV 器件置位 nSTATUS 信号低电平,表明数据帧
错误和 CONF_DONE 信号保持低电平。如果 Auto- restart configuration after error
选项 (在 Quartus II 软件的 Device and Pin Options 对话框中的 General 标签上)
为打开状态,Cyclone IV 器件在复位超时后释放 nSTATUS (最多为 230 μs)),然后
重试配置。如果这一选项为关闭状态,系统必须监控 nSTATUS 的错误,然后脉冲
nCONFIG 低电平至少 500 ns 以便重新启动配置。
初始化
在 Cyclone IV 器件中,初始化时钟源为内部振荡器或可选的 CLKUSR 管脚。在默认情
况下,内部振荡器为初始化时钟源。如果您使用内部振荡器,该器件本身为适当的初
始化提供足够的时钟周期。当使用内部振荡器时,在初始化阶段您不必从外部源发送
额外的时钟周期到 CLKUSR 管脚。此外,您可以使用 CLKUSR 管脚作为用户 I/O 管脚。
您也可以利用 CLKUSR 选项,灵活地对多个器件进行同步初始化或延迟初始化。 CLKUSR
管脚允许您的控制,当您的器件以不确定的时间进入到用户模式时。您可以打开
Enable user-supplied start-up clock (CLKUSR) 选项,在 Quartus II 软件的 Device
and Pin Options 对话框中的 General 标签上。当您打开 Enable user supplied
start-up clock option (CLKUSR) 选项时, CLKUSR 管脚为初始化时钟源。在 CLKUSR
管脚上提供一个时钟不会影响配置的过程。在配置数据被接受和 CONF_DONE 变高后,
Cyclone IV 器件需要 3,192 个时钟周期以进行正确初始化和进入用户模式。
1
如果在器件初始化期间您使用的可选 CLKUSR 管脚和 nCONFIG 管脚被拉低以重新启动配
置,那么在 nSTATUS 为低电平时 (最多为 230 μs),确保 CLKUSR 管脚继续触发。
用户模式
一个可选的 INIT_DONE 管脚是可用的,一个由低至高的跳变表明了初始化的结束和用
户模式的开始。Enable INIT_DONE Output 选项可在 Quartus II 软件的 Device and
Pin Options 对话框中的 General 标签上选用。如果您使用 INIT_DONE 管脚,那么在
nCONFIG 为低电平和配置初始阶段,此管脚会由于一个外部 10-kΩ 上拉电阻而变高。它
会变高。在选项位启用 INIT_DONE 可为器件编程 (在第一帧的配置数据),
INIT_DONE 管脚变为低电平。当初始化完成后, INIT_DONE 管脚被释放并拉高。这种由
低至高的跳变表明器件已进入用户模式。在用户模式下,用户 I/O 管脚功能分配在您
的设计中并且不再具有弱上拉电阻。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–8
配置方案
通过将 MSEL 管脚驱动为高电平或低电平来选择不同配置电压标准的配置方案,如
表 8-3、表 8-4 和表 8-5 所示。
1
不用上拉或下拉电阻器直接连接 MSEL 管脚至 VCCA 或 GND,以避免在检测不正确配置方案
时出现问题。不要利用微处理器或其它器件驱动 MSEL 管脚。
表 8-3. Cyclone IV GX 器件的配置方案 (EP4CGX15、EP4CGX22 和 EP4CGX30 [ 除 F484 封装以外 ])
MSEL2
MSEL1
MSEL0
POR 延迟
配置电压标准 (V) (1)
1
0
1
快速
3.3
0
1
1
快速
3.0, 2.5
0
0
1
标准
3.3
0
1
0
标准
3.0, 2.5
1
0
0
快速
3.3, 3.0, 2.5
PS
1
1
0
快速
1.8, 1.5
0
0
0
标准
3.3, 3.0, 2.5
基于 JTAG 配置 (2)
(3)
(3)
(3)
—
—
配置方案
AS
表 8-3 注释:
(1) 配置电压标准适用于配置管脚所在的 bank 上的 VCCIO 电源。
(2) 基于 JTAG 配置优先于其它配置方案,这意味着 MSEL 管脚设置将被忽略。
(3) 不可悬空 MSEL 管脚。将其连接到 VCCA 或 GND。这些管脚支持用于产品中的非 JTAG 配置方案。Altera 建议,如果您的器件仅使
用 JTAG 配置,连接 MSEL 管脚到 GND。
表 8-4. Cyclone IV GX 器件的配置方案 (EP4CGX30 [ 仅在 F484 封装 ]、EP4CGX50、EP4CGX75、EP4CGX110 和
EP4CGX150)
配置方案
AS
PS
FPP
基于 JTAG 配置 (2)
MSEL3
MSEL2
MSEL1
MSEL0
POR 延迟
配置电压标准 (V) (1)
1
1
0
1
快速
3.3
1
0
1
1
快速
3.0, 2.5
1
0
0
1
标准
3.3
1
0
1
0
标准
3.0, 2.5
1
1
0
0
快速
3.3, 3.0, 2.5
1
1
1
0
快速
1.8, 1.5
1
0
0
0
标准
3.3, 3.0, 2.5
0
0
0
0
标准
1.8, 1.5
0
0
1
1
快速
3.3, 3.0, 2.5
0
1
0
0
快速
1.8, 1.5
0
0
0
1
标准
3.3, 3.0, 2.5
0
0
1
0
标准
1.8, 1.5
(3)
(3)
(3)
(3)
—
—
表 8-4 注释:
(1) 配置电压标准适用于配置管脚所在的 bank 上的 VCCIO 电源。
(2) 基于 JTAG 配置优先于其它配置方案,这意味着 MSEL 管脚设置将被忽略。
(3) 不可悬空 MSEL 管脚。将其连接到 VCCA 或 GND。这些管脚支持用于产品中的非 JTAG 配置方案。Altera 建议,如果您的器件仅使
用 JTAG 配置,连接 MSEL 管脚到 GND。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
1
8–9
较小的 Cyclone IV E 器件或封装选项(E144 和 F256 封装)不具有 MSEL[3] 管脚。主动
串行快速上电复位 (AS Fast POR)配置方案使用 3.0- 或 2.5-V 配置电压标准和主动
并行 (AP)配置方案在不具备 MSEL[3] 管脚的 Cyclone IV E 器件中不被支持。要配
置这些设备与其它支持的配置方案,根据表 8-5 中的 MSEL 设置选择 MSEL[2..0] 管
脚。
表 8-5. Cyclone IV E 器件的配置方案
配置方案
AS
AP
PS
FPP
基于 JTAG 配置 (2)
MSEL3
MSEL2
MSEL1
MSEL0
POR 延迟
配置电压标准 (V) (1)
1
1
0
1
快速
3.3
0
1
0
0
快速
3.0, 2.5
0
0
1
0
标准
3.3
0
0
1
1
标准
3.0, 2.5
0
1
0
1
快速
3.3
0
1
1
0
快速
1.8
0
1
1
1
标准
3.3
1
0
1
1
标准
3.0, 2.5
1
0
0
0
标准
1.8
1
1
0
0
快速
3.3, 3.0, 2.5
0
0
0
0
标准
3.3, 3.0, 2.5
1
1
1
0
快速
3.3, 3.0, 2.5
1
1
1
1
快速
1.8, 1.5
(3)
(3)
(3)
(3)
—
—
表 8-5 注释:
(1) 配置电压标准适用于配置管脚所在的 bank 上的 VCCIO 电源。
(2) 基于 JTAG 配置优先于其它配置方案,这意味着 MSEL 管脚设置将被忽略。
(3) 不可悬空 MSEL 管脚。将其连接到 VCCA 或 GND。这些管脚支持用于产品中的非 JTAG 配置方案。Altera 建议,如果您的器件仅使
用 JTAG 配置,连接 MSEL 管脚到 GND。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–10
1
对于 Cyclone IV E 器件,当配置器件 I/O 电压不是 2.5 V 时,Quartus II 软件禁止您在 I/O
Bank 1 中使用 LVDS I/O 标准。如果您需要分配 I/O Bank 1 中的 LVDS I/O 标准时,跳转
到 Assignments>Device>Settings>Device and Pin Option>Configuration 以更改配
置器件 I/O 电压到 2.5 V 或 Auto.。
AS 配置 (串行配置器件)
在 AS 配置方案中,Cyclone IV 器件由串行配置器件配置。这些配置器件是具有非易失
内存的低成本器件,具有简化四管脚接口和小型化的特征。这些特性使得串行配置器
件成为理想的低成本配置方案。
f 有关串行配置器件的详细信息,请参阅配置手册第 2 卷的 Serial Configuration
Devices (EPCS1, EPCS4, EPCS16, EPCS64, and EPCS128) Datasheet。
串行配置器件提供一个串行接口以访问配置数据。在器件配置期间,Cyclone IV 器件
通过串行接口读取配置数据,必要时解压缩数据并配置它们的 SRAM 单元。这项方案被
称为 AS 配置方案,因为该器件控制配置接口。
1
如果您想要控制 EPCS 管脚,那么要保持 nCONFIG 管脚低电平并上拉 nCE 管脚,以促使器
件的复位和三态 AS 配置管脚。
单器件 AS 配置
串行配置器件的四管脚接口包含以下管脚:
Cyclone IV 器件手册,
卷 1
■
串行时钟输入 (DCLK)
■
串行数据输出 (DATA)
■
低电平有效芯片选择 (nCS)
■
AS 数据输入 (ASDI)
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–11
这个四管脚接口连接到 Cyclone IV 器件管脚,如图 8-2 所示 :
图 8-2. 单器件 AS 配置
VCCIO (1)
VCCIO (1)
VCCIO (1)
10 kΩ
Serial Configuration
Device
10 kΩ
10 kΩ
Cyclone IV Device
nSTATUS
CONF_DONE
nCONFIG
nCE
nCEO
N.C. (3)
GND
25 Ω (5)
DATA
DCLK
nCS
ASDI
(2)
DATA[0]
DCLK
nCSO (6)
ASDO (6)
CLKUSR
(7)
MSEL[ ]
(4)
图 8-2 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) Cyclone IV 器件使用 ASDO-to-ASDI 路径控制配置器件。
(3) 悬空 nCEO 管脚或作为用户 I/O 管脚,当它不能为另一个器件提供 nCE 管脚时。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚,请参考第 8-8 页
表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。直接连接 MSEL 管脚到 VCCA 或 GND。
(5) 将串行电阻器连接到串行配置器件的近端。
(6) 这些管脚为复用 I/O 管脚。 nCSO 管脚在 AP 模式中作为 FLASH_nCE 管脚的功能。 ASDO 管脚在 AP 和 FPP
模式中作为 DATA[1] 管脚的功能。
(7) 仅在 Cyclone IV GX 器件上有一个选项以选择 CLKUSR (最高为 40 MHz)作为 DCLK 的外部时钟源。
1
要为 AS 配置方案三态配置总线,您必须结合高 nCE 和低 nCONFIG。
1
在串行配置器件中近端的 25-Ω 电阻器,为 DATA[0] 工作以最小化驱动阻抗和电路板走
线不相匹配并减少出现在 Cyclone IV 器件 DATA[0] 输入管脚的过冲。
在单器件 AS 配置中,所支持的串行配置和 Cyclone IV 器件最大化电路板加载和电路
板走线长度,必须遵循第 8-18 页表 8-6 的建议。
由 Cyclone IV 器件生成的 DCLK 控制整个配置周期并为串行接口提供时序。Cyclone
IV 器件使用一个内部振荡器或一个外部时钟源生成 DCLK。对于 Cyclone IV E 器件,
您可以使用一个 40-MHz 的内部振荡器生成 DCLK,而对于 Cyclone IV GX 器件您则可以
从内部振荡器中使用一个慢时钟 (最高为 20 MHz)或一个快时钟 (最高为 40 MHz)
或者从 CLKUSR 的一个外部时钟生成 DCLK。内部振荡器的频率的一些变化是由于
Cyclone IV 器件中的工艺,电压和温度 (PVT)条件所产生。内部振荡器的设计目的
是确保其最高频率保证满足 EPCS 器件的规格。Cyclone IV 器件提供选项以选择
CLKUSR 作为 DCLK 的外部时钟源。您可以在 Quartus II 软件的 Device and Pin Options
对话框中的 Configuration 标签上更改时钟源。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–12
1
EPCS1 不支持 Cyclone IV 器件是由于它的内存容量不足。
在配置模式中,Cyclone IV 器件通过驱动 nCSO 输出管脚至低电平启用串行配置器件,
将其连接到配置器件的 nCS 管脚。Cyclone IV 器件使用 DCLK 和 DATA[1] 管脚为串行
配置器件发送操作命令和读取地址信号。配置器件在 DATA 管脚上提供数据,并连接到
Cyclone IV 器件的 DATA[0] 输入。
所有的 AS 配置管脚 (DATA[0]、 DCLK、 nCSO 和 DATA[1])的内部弱上拉电阻器始终处
于激活状态。在配置完成后,这些管脚均被设置为输入三态,并由内部弱上拉电阻器
驱动至高电平。
AS 模式的时序参数没有列在这里,因为 tCF2CD、tCF2ST0、tCFG, tSTATUS、tCF2ST1 和 tCD2UM
时序参数与 PS 模式的时序参数是相同的,显示在第 8-36 页表 8-11。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–13
多器件 AS 配置
您可以利用一个单一的串行配置器件配置多个 Cyclone IV 器件。当第一个器件从比特
流采集其所有的配置数据后,它驱动 nCEO 管脚至低电平,并启用链中的下一个器件。
如果链中的最后一个器件是 Cyclone IV 器件,那么您可以将最后一个器件的 nCEO 管
脚悬空或者在配置完成后将其作为用户 I/O 管脚。链中各个器件的 nCONFIG、
nSTATUS、 CONF_DONE、 DCLK 和 DATA[0] 管脚都连接在一起 ( 图 8-3)。
图 8-3. 多器件 AS 配置
VCCIO (1)
10 kW
VCCIO (1)
10 kW
VCCIO (1)
VCCIO (2)
10 kW
10 kW
Serial Configuration
Device
Cyclone IV Master Device
nSTATUS
CONF_DONE
nCONFIG
nCE
(10)
DATA
DCLK
nCS
ASDI
Cyclone IV Slave Device
nSTATUS
CONF_DONE
nCONFIG
nCE
nCEO
nCEO
N.C. (3)
GND
25 W (5)
(10)
50 W (5), (7)
DATA[0]
DCLK
nCSO (8)
ASDO (8)
CLKUSR
(9)
MSEL[ ]
(4)
DATA[0]
DCLK
MSEL[ ]
(4)
50 W(7)
Buffers (6)
图 8-3 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 将上拉电阻连接到 nCE 管脚所在的 I/O bank 上的 VCCIO 电源。
(3) 您可以悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。您必须在 Cyclone IV 器件的 AS 模式中设置主器件以及在 PS 模
式中设置从器件。要将 MSEL 管脚连接到 AS 模式中的主器件和 PS 模式中的从器件,请参考第 8-8 页表 8-3、第 8-8 页表 8-4 和
第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(5) 将串行电阻器连接到串行配置器件的近端。
(6) 为 DATA[0] 和 DCLK,连接 Cyclone IV 器件的主器件和从器件之间的中继缓冲器。所有的 I/O 输入必须保持最高 4.1 V 的 AC 电
压。中继缓冲器的输出阻抗必须附合 ““ 配置和 JTAG 管脚的 I/O 要求 ” 第 8-5 页 ” 所概述的最大过冲方程。
(7) 如果 3.3-V 配置电压标准适用,那么 50-Ω 串行电阻器是可选的。为了优化信号的完整性,在 2.5- 和 3.0-V 配置电压标准适用的
情况下,连接这些 50-Ω 串行电阻。
(8) 这些管脚为复用 I/O 管脚。 nCSO 管脚在 AP 模式中作为 FLASH_nCE 管脚的功能。 ASDO 管脚在 AP 和 FPP 模式中作为 DATA[1] 管脚
的功能。
(9) 仅在 Cyclone IV GX 器件有一个选项以选择 CLKUSR (最高为 40 MHz)作为 DCLK 的外部时钟源。
(10)对于使用 1,0 核电压的 Cyclone IV E 的多器件 AS 配置,从串行配置器件到 DCLK 和 Data0 线的交界分割处的最大化电路板走线长
度为 3.5 英寸。
Cyclone IV 器件链中的第一个器件是主配置,它控制着整个器件链的配置。其它支持
PS 配置的 Altera 器件也可以作为器件链中的部分从配置。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–14
1
在多器件 AS 配置中,串行配置器件和 Cyclone IV 器件的主器件之间的电路板走线长度
必须遵循第 8-18 页表 8-6 的建议。
所有目标器件上的 nSTATUS 和 CONF_DONE 管脚都与外部上拉电阻器连接在一起,如第
8-13 页图 8-3 所示。这些管脚在器件上都是开漏双向管脚。当第一个器件使 nCEO 有
效 (在完成接收其所有的配置数据后),它释放自身的 CONF_DONE 管脚。然而,链中
随后的器件保持共享 CONF_DONE 线低电平直到它们接收到其配置数据。当器件链上的
所有目标器件接收其配置数据和释放 CONF_DONE 时,上拉电阻在 CONF_DONE 线驱动高
电平,所有器件同时进入初始化模式。
1
虽然您可以级联 Cyclone IV 器件,但是串行配置器件不能被级联和链接在一起。
如果配置比特流的大小超过一个串行配置器件的容量,您必须选择一个更大的配置器
件或启用压缩功能,或者两者都用。当配置多个器件时,比特流的大小为各个单器件
配置比特流的总和。
利用相同的设计配置多个 Cyclone IV 器件
某些设计要求您用相同的设计通过一个配置比特流或一个 .sof 文件配置多个
Cyclone IV 器件。您可以通过以下方法来实现:
1
■
多个 .sof
■
单个 .sof
对于这两种方法,串行配置器件不能被级联和链接在一起。
多个 SRAM 目标文件
两个副本的 .sof 文件被存储于串行配置器件。使用第一个副本配置 Cyclone IV 器件
的主器件,同时使用第二个副本配置所有剩下的从器件。所有的从器件都具有相同的
密度和封装。设置与第 8-13 页图 8-3 相类似。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–15
用相同的 .sof 文件为四个相同的 Cyclone IV 器件进行配置,您必须把器件链建立成
类似于图 8-4 所示的例子。第一个器件是主器件,它的 MSEL 管脚必须设置选择 AS 配
置。其它三个从器件同时设立配置,它们的 MSEL 管脚必须设置选择 PS 模式。主器件
的 nCEO 管脚驱动所有三个从器件上的 nCE 输入管脚,同时将 DATA 和 DCLK 管脚并行连
接到所有四个器件中。在第一个配置周期期间,主器件从串行配置器件读取它的配置
数据,同时保持 nCEO 高电平。在配置周期完成后,主器件驱动 nCE 低电平并发送第二
个配置数据副本到所有三个从器件中同时对其进行配置。
在图 8-4 中的设置优势是,您可以在主器件上有不同的 .sof 文件。然而,所有的从
器件必须配置相同的 .sof。您可以在这个配置方法中压缩或解压缩 .sof。
1
如果主器件和从器件使用相同的 .sof,您仍然可以使用这个方法。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–16
图 8-4. 器件接收含有多个 .sof 文件的相同数据的多器件 AS 配置
VCCIO (1)
10 kW
VCCIO (1)
10 kW
VCCIO (1)
VCCIO (2)
10 kW
10 kW
Cyclone IV Slave Device
nSTATUS
CONF_DONE
nCONFIG
nCE
nCEO
N.C. (3)
DATA[0]
DCLK
MSEL[ ]
Serial Configuration
Device
Cyclone IV Slave Device
Cyclone IV Master Device
nSTATUS
CONF_DONE
nCONFIG
nCE
(10)
nSTATUS
CONF_DONE
nCONFIG
nCE
nCEO
nCEO
N.C. (3)
GND
25 W (5)
DATA
(4)
DATA[0]
(10)
DCLK
nCS
ASDI
50 W (5), (7)
DCLK
nCSO (8)
ASDO (8)
CLKUSR
(9)
MSEL[ ]
(4)
DATA[0]
DCLK
MSEL[ ]
(4)
Cyclone IV Slave Device
nSTATUS
CONF_DONE
nCONFIG
nCE
nCEO
N.C. (3)
50 W (7)
Buffers (6)
DATA[0]
DCLK
MSEL[ ]
(4)
Notes to 图 8-4:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 将上拉电阻连接到 nCE 管脚所在的 I/O bank 上的 VCCIO 电源。
(3) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。您必须在 AS 模式中设置主器件以及在 PS 模式中设置从器件。要
将 MSEL 管脚连接到 AS 模式中的主器件和 PS 模式中的从器件,请参考第 8-8 页表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。将
MSEL 管脚直接连接到 VCCA 或者 GND。
(5) 将串行电阻器连接到串行配置器件的近端。
(6) 为 DATA[0] 和 DCLK,连接主器件和从器件之间的中继缓冲器。所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。中继缓冲器的输
出阻抗必须附合 ““ 配置和 JTAG 管脚的 I/O 要求 ” 第 8-5 页 ” 所概述的最大过冲方程。
(7) 如果 3.3-V 配置电压标准适用,那么 50-Ω 串行电阻器是可选的。为了优化信号的完整性,在 2.5- 和 3.0-V 配置电压标准适用的
情况下,连接这些 50-Ω 串行电阻。
(8) 这些管脚为复用 I/O 管脚。 nCSO 管脚在 AP 模式中作为 FLASH_nCE 管脚的功能。 ASDO 管脚在 AP 和 FPP 模式中作为 DATA[1] 管脚
的功能。
(9) 仅在 Cyclone IV GX 器件有一个选项以选择 CLKUSR (最高为 40 MHz)作为 DCLK 的外部时钟源。
(10)对于使用 1,0 核电压的 Cyclone IV E 的多器件 AS 配置,从串行配置器件到 DCLK 和 Data0 线的交界分割处的最大化电路板走线长
度为 3.5 英寸。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–17
单个 SRAM 目标文件
第二种方法用相同的 .sof 配置主器件和从器件。串行配置器件存储一个 .sof 副本。
您必须在链中设立一个或多个从器件。所有的从器件必须以相同的方法设立 ( 图 85)。
图 8-5. 在器件利用一个单个 .sof 接收相同数据的多器件 AS 配置
VCCIO (1)
10 kW
Serial Configuration
Device
VCCIO (1)
VCCIO (1)
10 kW
10 kW
(9)
nCEO
N.C. (2)
GND
25 W (4)
DATA
50 W (4),(6)
nSTATUS
CONF_DONE
nCONFIG
nCE
nCEO
Cyclone IV Slave Device 2
nSTATUS
CONF_DONE
nCONFIG
nCE
N.C. (2)
GND
nCEO
N.C. (2)
GND
DATA[0]
(9)
CLKUSR
(9)
DCLK
nCS
ASDI
Cyclone IV Slave Device 1
Cyclone IV Master Device
nSTATUS
CONF_DONE
nCONFIG
nCE
DATA[0]
DATA[0]
DCLK
DCLK
nCSO (7)
ASDO (7)
MSEL[ ]
(3)
DCLK
MSEL[ ]
(3)
MSEL[ ]
(3)
50 W(7)
Buffers (5)
图 8-5 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(3) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。您必须在 Cyclone IV 器件的 AS 模式中设置主器件以及在 PS 模
式中设置从器件。要将 MSEL 管脚连接到 AS 模式中的主器件和 PS 模式中的从器件,请参考第 8-8 页表 8-3、第 8-8 页表 8-4 和
第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(4) 将串行电阻器连接到串行配置器件的近端。
(5) 为 DATA[0] 和 DCLK,连接主器件和从器件之间的中继缓冲器。所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。中继缓冲器的输
出阻抗必须附合 ““ 配置和 JTAG 管脚的 I/O 要求 ” 第 8-5 页 ” 所概述的最大过冲方程。
(6) 如果 3.3-V 配置电压标准适用,那么 50-Ω 串行电阻器是可选的。为了优化信号的完整性,在 2.5- 和 3.0-V 配置电压标准适用的
情况下,连接这些 50-Ω 串行电阻。
(7) 这些管脚为复用 I/O 管脚。 nCSO 管脚在 AP 模式中作为 FLASH_nCE 管脚的功能。 ASDO 管脚在 AP 和 FPP 模式中作为 DATA[1] 管脚
的功能。
(8) 仅在 Cyclone IV GX 器件有一个选项以选择 CLKUSR (最高为 40 MHz)作为 DCLK 的外部时钟源。
(9) 对于使用 1,0 核电压的 Cyclone IV E 的多器件 AS 配置,从串行配置器件到 DCLK 和 Data0 线的交界分割处的最大化电路板走线长
度为 3.5 英寸。
在这个设置中,所有链中的 Cyclone IV 器件为并发配置连接。这节省了 AS 配置的时
间,因为所有的 Cyclone IV 器件都被配置在同一配置周期。将所有 Cyclone IV 器件
中的 nCE 输入管脚连接到 GND。您可以悬空所有 Cyclone IV 器件上的 nCEO 输出管脚
或者使用 nCEO 输出管脚为普通用户 I/O 管脚。 DATA 和 DCLK 管脚被并行连接到所有的
Cyclone IV 器件上。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–18
Altera 建议在主器件的 DATA 和 DCLK 输出之前放置一个缓冲器以避免信号强度和信号
完整性问题。缓冲器不可明显改变 DATA-to-DCLK 的关系或者延迟它们关于其它 AS 信
号 (ASDI 和 nCS)。此外,缓冲器必须仅驱动从器件,以确保在主器件和串行配置器
件之间的时序不受影响。
这种配置方法支持压缩和解压缩的 .sof 文件。因此,如果配置比特流大小超过一个串
行配置器件的容量,您可以在 .sof 文件中启用压缩功能或选择一个较大的串行配置器
件。
为 AS 接口连接串行配置器件到 Cyclone IV 器件的指南
对于单个或多个器件的 AS 配置,在所支持的串行配置器件和 Cyclone IV 器件之间的
电路板走线长度和加载必须遵循表 8-6 所列的建议。
表 8-6. AS 配置的最大走线长度和加载
Cyclone IV 器
件 AS 管脚
从 Cyclone IV 器件到串行配置器件的最
大电路板走线长度 (英寸)
最大电路板加载 (pF)
Cyclone IV E
Cyclone IV GX
DCLK
10
6
15
DATA[0]
10
6
30
nCSO
10
6
30
ASDO
10
6
30
表 8-6 注释:
(1) 对于使用 1,0 核电压的 Cyclone IV E 的多器件 AS 配置,从串行配置器件到 DCLK 和 Data0 线的交界
分割处的最大化电路板走线长度为 3.5 英寸。
AS 配置时间的估算
AS 配置时间是由串行配置器件传输数据到 Cyclone IV 器件所使用的时间而定。这种串
行接口是由 Cyclone IV 器件的 DCLK 输出定时 (生成一个 40-MHz 的内部振荡器于
Cyclone IV E 器件上,一个 20- 或者 40-MHz 的内部振荡器,或者一个高达 40 MHz 的
外部 CLKUSR 于 Cyclone IV E 器件上)。
公式 8-2 和公式 8-3 显示配置时间的计算。
公式 8-2.
maximum DCLK period
RBF Size ×  ----------------------------------------------------------- = 估算的最大配置时间


1 bit
公式 8-3.
50 ns
9,600,000 bits ×  ------------ = 480 ms
 1 bit 
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–19
表 8-7 提供 AS 配置的配置时间。
表 8-7. Cyclone IV 器件的 AS 配置时间
符号
参数
Cyclone IV E
Cyclone IV GX
单位
tSU
设置时间
10
8
ns
tH
保持时间
0
0
ns
tCO
Clock-to- output 时间
4
4
ns
启用压缩功能可以减少发送到 Cyclone IV 器件的配置数据量,也可以节省配置时间。
通常情况下,压缩可以节省 50% 的配置时间。
编程串行配置器件
串行配置器件是非易失的,基于闪存的器件。您可以用 USB-Blaster ™或者
ByteBlaster ™ II 下载电缆在系统编程这些器件。另外,您可以用 Altera 编程单元
(APU), 支持第三方的程序员或者 SRunner 软件驱动的微处理器来对它们进行编程。
您可以通过 AS 编程接口进行串行配置器件的在系统编程。在系统编程过程中,下载电
缆禁止器件访问 AS 接口驱动 nCE 管脚高电平。Cyclone IV 器件也保持复位 nCONFIG
的低电平。在编程完成后,下载电缆释放 nCE 和 nCONFIG,允许分别驱动上拉和下拉
电阻的 VCC 和 GND。
要执行通过 AS 编程接口在系统编程一个串行配置器件,您必须尽可能地将二极管和电
容放置在接近 Cyclone IV 器件的地方。同时,您必须确保二极管和电容保持 4.1 V 的
最大 AC 电压 ( 图 8-6)。
1
如果您想要使用显示在图 8-6 的安装程序,以执行一个串行配置器件和单一或者多器
件 AS 配置的在系统编程,您不需要在串行配置器件的近端的 DATA 线上的串行电阻。
现有的二极管和电容就足够了。
Altera 公司开发的串行闪存加载器 (SFL),是 Altera 串行配置器件一个基于 JTAG 的
在系统编程解决方案。SFL 是一个 Cyclone IV 器件的桥梁设计,使用 JTAG 接口访问
EPCS JIC (JTAG 间接配置器件编程)文件,然后使用 AS 接口编程 EPCS 器件。JTAG 接
口和 AS 接口桥接在 SFL 设计内。
f 要了解关于实现Cyclone IV器件的SFL的详细信息,请参阅 AN 370: Using the Serial
FlashLoader with the Quartus II Software。
f 要了解关于 USB-Blaster 下载电缆的详细信息,请参阅 USB-Blaster Download Cable
User Guide. 要了解关于 ByteBlaster II 下载电缆的详细信息,请参阅 ByteBlaster
II Download Cable User Guide。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–20
图 8-6 显示下载电缆与串行配置器件的连接
图 8-6. 在系统编程的串行配置器件
VCCIO (1)
10 kΩ
VCCIO (1)
10 kΩ
VCCIO (1)
10 kΩ
Cyclone IV Device
nSTATUS
CONF_DONE
nCONFIG
nCE
3.3 V
10 kΩ
Serial
Configuration Device
nCEO
N.C. (2)
CLKUSR
(8)
3.3 V
3.3 V
3.3 V
GND
(5)
DATA[0] (6)
DCLK (6)
nCSO (7)
ASDO (7)
DATA
DCLK
nCS
ASDI
Pin 1
MSEL[ ]
(4)
3.3 V (3)
GND
10 pf
10 pf
GND
10 pf
ByteBlaster II or USB Blaster
10-Pin Male Header
GND
GND
GND
10 pf
(5)
GND
图 8-6 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(3) 用 3.3- V 的电源上电 ByteBlaster II 的 VCC 或 USB-Blaster 下载电缆。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚,请参考第 8-8 页表 8-3、第 8-8 页表 8-4 和
第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(5) 二极管和电容必须尽可能地放置在接近 Cyclone IV 器件的地方。您必须确保二极管和电容保持 4.1 V 的最大 AC 电压。 外部二极
管和电容要求防止由于编程下载电缆的串行配置器件引起可能的过冲,对 Cyclone IV 器件 AS 配置输入管脚的损坏。Altera 建议
使用 Schottky 二极管,它具有比切换和 Zener 二极管相对较低的正向二极管 (VF),用于有效的钳位电压。
(6) 当在多器件 AS 配置中级联 Cyclone IV 器件时,为 DATA[0] 和 DCLK 连接主器件和从器件之间的中继缓冲器。所有 I/O 输入必须保
持 4.1 V 的最大 AC 电压。中继缓冲器的输出电阻必须符合最大过冲方程概括于 “ 配置和 JTAG 管脚的 I/O 要求 ” 第 8-5 页。
(7) 这些管脚为复用 I/O 管脚。 nCSO 管脚在 AP 模式中作为 FLASH_nCE 管脚的功能。 ASDO 管脚在 AP 和 FPP 模式中作为 DATA[1] 管脚
的功能。
(8) 仅在 Cyclone IV GX 器件有一个选项以选择 CLKUSR (最高为 40 MHz)作为 DCLK 的外部时钟源。
您可以使用 Quartus II 软件的 APU 和适当的配置器件编程适配器以编程串行配置器
件。所有的串行配置器件提供在 8- 或者 16- 管脚小型化集成电路 (SOIC)封装。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–21
在生产环境中,使用多个方法编程串行配置器件。Altera 编程硬件或者第三方编程硬
件在它们安装于 PCB 之前用于编程空白的串行配置器件。另外,您可以使用一台板内
微处理器通过 Altera 提供的移植参考 C-based SRunner 软件驱动程序编程在系统串行
配置器件。
一个串行配置器件通过 SRunner 软件驱动程序的一个外部微处理器进行在系统编程。
SRunner 软件驱动程序是一个发展于嵌入式串行配置器件编程的驱动程序,它易于定制
以符合不同的嵌入式系统。SRunner 软件驱动程序能够读取原始的编程数据 (.rpd)
文件和写入串行配置器件。使用 SRunner 软件驱动程序,对串行配置器件的编程时间
可比得上 Quartus II 软件的编程时间。
f 要了解关于 SRunner 软件驱动程序的详细信息,请参阅 AN 418: SRunner: An Embedded
Solution for Serial Configuration Device Programming 和 Altera 网站上的源代
码。
AP 配置 (支持闪存)
只有 Cyclone IV E 器件支持 AP 配置,在 AP 配置方案中,使用商用 16 位并行闪存编
程 Cyclone IV E 器件。这些外部的非易失性配置器件是工业标准的微处理器闪存。闪
存提供一个快速接口以访问配置数据。加速配置时间,主要是由于 16 位宽的并行数据
总线,它用于从闪存中检索数据。
一些较小的 Cyclone IV E 器件或封装选项不支持 AP 配置方案。表 8-8 列出了各个
Cyclone IV E 器件支持的 AP 配置方案。
表 8-8. Cyclone IV E 器件所支持的 AP 配置方案
封装选项
器件
E144
M164
U256
F256
U484
F484
F780
EP4CE6
—
—
—
—
—
—
—
EP4CE10
—
—
—
—
—
—
—
EP4CE15
—
—
—
—
—
v
—
EP4CE22
—
—
—
—
—
—
—
—
—
v
v
v
v
EP4CE30
—
—
—
EP4CE40
—
—
—
—
v
EP4CE55
—
—
—
—
v
v
v
EP4CE75
—
—
—
—
v
v
v
EP4CE115
—
—
—
—
—
v
v
在器件配置过程中,Cyclone IV E 器件使用并行接口读取配置数据,并且配置其 SRAM
单元。这一方案被称为 AP 配置方案,因为该器件控制配置接口。这一方案与 FPP 配置
方案对比,其中一台外部主机控制接口。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–22
AP 配置支持闪存
在 Cyclone IV E 器件中的 AP 配置控制器被设计与两个工业标准的系列闪存接口 —
Numonyx StrataFlash® Embedded Memory P30 系列闪存和 Numonyx StrataFlash
Embedded Memory P33 系列闪存。与串行配置器件不同的是,AP 配置方案支持的两种
系列闪存都被设计与微处理器接口。通过从工业标准的微处理器的闪存的配置,实现
进入用户模式后对闪存的访问,AP 配置允许您结合配置数据和用户数据 (微处理器引
导代码)在相同的闪存上。
Numonyx P30 和 P33 的系列闪存在 40 MHz DCLK 频率时支持一个连续的同步突发读取模
式以读取闪存中的数据。此外,Numonyx P30 和 P33 系列闪存有相同的管脚并采取类似
的协议进行数据访问。
1
Cyclone IV E 器件在 AP 配置方案使用一台 40-MHz 的振荡器。这台振荡器与用于
Cyclone IV E AS 配置方案的振荡器相同。
表 8-9 列出了 AP 配置方案支持的商用并行闪存系列。
表 8-9. Cyclone IV 器件的 AP 配置方案支持的商用并行闪存
(1)
闪存密度
Numonyx P30 系列闪存 (2)
Numonyx P33 系列闪存 (3)
64 Mbit
v
v
128 Mbit
v
v
256 Mbit
v
v
表 8-9 注释:
(1) AP 配置方案只支持 40 MHz 或更高的速度等级的闪存。
(2) 3.3- 、3.0-、2.5- 和 1.8-V I/O 选项支持 Numonyx P30 系列闪存。
(3) 3.3-、3.0- 和 2.5-V I/O 选项支持 Numonyx P33 系列闪存。
从 Numonyx P30 和 P33 系列的 512-Mbit 闪存配置 Cyclone IV E 器件是可能的,但您
必须根据这些闪存的需要正确地驱动额外的地址和 FLASH_nCE 管脚。
f 要检查支持的速度等级和封装选项,请参考各自的闪存数据表。
Cyclone IV E 器件中的 AP 配置方案支持 40 MHz 或更高的速度等级的闪存。然而,对
于 AP 配置的所有这些速度等级必须在 40 MHz 的上限。当您设计 Cyclone IV E 器件访
问用户模式中的闪存时,更快的速度等级优势将被实现。
f 要了解关于运行 Numonyx StrataFlash Embedded Memory P30 和 P33 系列闪存的详细信
息,请在 Numonyx 网站 (www.numonyx.com)上搜索关键字 “P30” 或者 “P33” 以获
取 P30 或者 P33 系列的数据表。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–23
单器件 AP 配置
在 Numonyx P30 和 P33 闪存支持以下的接口管脚组:
■
控制管脚
■
地址管脚
■
数据管脚
以下的控制信号是来自所支持的并行闪存:
■
CLK
■
低电平有效复位 (RST#)
■
低电平有效芯片使能 (CE#)
■
低电平有效输出使能 (OE#)
■
低电平有效地址有效 (ADV#)
■
低电平有效写入使能 (WE#)
所支持的并行闪存输出一个控制信号 (WAIT)至 Cyclone IV E 器件以表明同步数据在
数据总线上已准备就绪。Cyclone IV E 器件具有一个 24 位的地址总线连接到闪存上的
地址总线 (A[24:1])。一个 16 位的双向数据总线 (DATA[15..0])在 Cyclone IV E
器件和闪存之间提供数据传输。
以下的控制信号是来自 Cyclone IV E 器件至闪存:
■
DCLK
■
低电平有效硬复位 (nRESET)
■
低电平有效芯片使能 (FLASH_nCE)
■
DATA[15..0] 总线和 WAIT 管脚的低电平有效输出使能 (nOE)
■
低电平有效地址有效,并用于写入数据到闪存 (nAVD)
■
低电平有效写入使能,并用于写入数据到闪存 (nWE)
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–24
图 8-7 显示了 Numonyx P30 系列闪存和 P33 系列闪存到 Cyclone IV E 器件管脚的接口。
图 8-7. 使用 Numonyx P30 和 P33 系列闪存的单器件 AP 配置
VCCIO (1) VCCIO (1) VCCIO (1)
CONF_DONE
10k
nSTATUS
10k
nCONFIG
10k
nCEO
N.C. (2)
nCE
GND
CLK
RST#
CE#
OE#
ADV#
WE#
WAIT
DQ[15:0]
A[24:1]
Numonyx P30/P33 Flash
MSEL[3..0]
(3)
DCLK
nRESET
FLASH_nCE
nOE
nAVD
nWE
I/O (4)
DATA[15..0]
PADD[23..0]
Cyclone IV E Device
图 8-7 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(3) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL[3..0],请参考第 8-9 页表 8-5。将 MSEL 管脚直接
连接到 VCCA 或者 GND。
(4) AP 配置在配置模式期间忽略了 WAIT 信号。然而,如果您在用户模式下以用户逻辑访问闪存,您可以可选地使用普通 I/O 监测
Numonyx P30 或 P33 闪存中的 WAIT 信号。
1
要三态 AP 配置方案的配置总线,您必须结合 nCE 高电平和 nCONFIG 低电平。
1
在一个单器件 AP 配置中,所支持的并行闪存和 Cyclone IV E 器件之间的最大的电路板
加载和电路板走线长度必须遵循第 8-28 页表 8-10 列出的建议。
1
如果您在 Cyclone IV E 器件使用 AP 配置方案,I/O bank 1、6、7 和 8 的 VCCIO 必须为 3.3、
3.0、2.5 或者 1.8 V。Altera 公司不建议在 Numonyx P30 或者 P33 系列闪存和 AP 配置
方案中的 Cyclone IV E 器件之间使用电平转换器。
1
在 2.5-、3.0- 和 3.3-V I/O 标准中使用 Numonyx 闪存时,对于 Cyclone IV E 器件在 AP 配
置模式中不需要串行电阻器。Numonyx P30 IBIS 模式的输出缓冲器没有过冲超过
4.1 V。因此,对于 2.5-、3.0- 和 3.3-V 的 AP 配置方案,不需要串行电阻。但是,如
果有任何其它的器件与 Cyclone IV E 器件共享相同的闪存 I/O 时,所有共享管脚都受
到 4.1-V 限制并且可能需要串行电阻。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–25
所支持的并行闪存的默认读取模式与对并行闪存的所有写操作是异步的。两个并行系列
闪存都支持一个同步读取模式,并具有 DCLK 的正边沿上提供的数据。
Cyclone IV E 器件生成的串行时间 (DCLK)控制整个配置周期,并提供了并行接口的
时序。
多器件 AP 配置
您可以使用一个单一的并行闪存配置多个 Cyclone IV E 器件。您可以使用芯片使能
(nCE)和芯片使能输出 (nCEO)管脚级联多个 Cyclone IV E 器件。链中的第一个器
件必须有其自身的 nCE 管脚连接到 GND。您必须将其 nCEO 管脚连接到链中的下一个器
件的 nCE 管脚上。使用一个外部的 10-kΩ 的上拉电阻器拉高 nCEO 信号到其 VCCIO 电
平,以帮助内部弱上拉电阻。当第一个器件从比特流上获取所有的配置数据时,它驱
动 nCEO 管脚至低电平,启用链中的下一个器件。您可以悬空最后一个器件的 nCEO 管
脚或者在配置完成后将其作为用户 I/O 管脚,如果链中最后一个器件是 Cyclone IV E
器件。链上每一个器件的 nCONFIG、 nSTATUS、 CONF_DONE、 DCLK、 DATA[15..8] 和
DATA[7..0] 管脚均是连接的 (第 8-26 页图 8-8 和第 8-27 页图 8-9)。
链中的第一个 Cyclone IV E 器件,如第 8-26 页图 8-8 和第 8-27 页图 8-9 所示,是
配置的主器件,它控制整个链的配置。 您必须连接其 MSEL 管脚以选择 AP 配置方案。
剩余的 Cyclone IV E 器件作为配置的从器件。您必须连接它们的 MSEL 管脚以选择 FPP
配置方案。其它任何支持 FPP 配置的 Altera 器件也可以作为链中配置的从器件的一部
分。
以下是对 DATA[15..0] 总线在一个多器件 AP 配置中的配置:
■
字节宽多器件 AP 配置
■
字宽多器件 AP 配置
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–26
字节宽多器件 AP 配置
对于多器件 AP 配置的简单方法是字节宽多器件 AP 配置。在位宽多器件 AP 配置中,来
自闪存和主器件 (为 AP 配置方案设置的)的 LSB 的 DATA[7..0] 管脚连接到为 FPP 配
置方案设置的从器件,如图 8-8 所示。
图 8-8. 字节宽多器件 AP 配置
VCCIO (1)
VCCIO (1)
VCCIO (1)
VCCIO (2)
10 kΩ
VCCIO (2)
10 kΩ
nCEO
nCE
nCEO
nCE
CONF_DONE
nSTATUS
nSTATUS
nCONFIG
CONF_DONE
nSTATUS
nCONFIG
nCE
nCONFIG
10 kΩ
10 kΩ
CONF_DONE
10 kΩ
nCEO
N.C. (3)
GND
CLK
RST#
CE#
OE#
ADV#
WE#
WAIT
DQ[15:0]
A[24:1]
Numonyx P30/P33 Flash
DCLK
nRESET
FLASH_nCE
nOE
nAVD
nWE
I/O (5)
DATA[15..0]
PADD[23..0]
MSEL[3..0]
(4)
DQ[7..0]
Cyclone IV E
Master Device
MSEL[3..0]
DATA[7..0]
DCLK
(4)
DQ[7..0]
Cyclone IV E Slave Device
MSEL[3..0]
(4)
DATA[7..0]
DCLK
Cyclone IV E Slave Device
Buffers (6)
图 8-8 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 将上拉电阻连接到 nCE 管脚所在的 I/O bank 上的 VCCIO 电源。
(3) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。您必须在 AP 模式中设置主器件和在 FPP 模式中设置从器件。要
连接 MSEL[3..0] 于 AP 模式中的主器件和 FPP 模式中的从器件,请参考第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(5) AP 配置在配置模式期间忽略了 WAIT 信号。然而,如果您在用户模式下以用户逻辑访问闪存,您可以可选地使用普通 I/O 监测
Numonyx P30 或 P33 闪存中的 WAIT 信号。
(6) 为 DATA[15..0] 和 DCLK 连接 Cyclone IV E 主器件和从器件之间的中继缓冲器。所有的 I/O 输入必须保持 4.1 V 的最大 AC 电压。
中继缓冲器的输出电阻必须符合最大过冲方程概括于 “ 配置和 JTAG 管脚的 I/O 要求 ” 第 8-5 页。
字宽多器件 AP 配置
更有效的设置是将其中的一些从器件连接到 LSB 的 DATA[7..0],而其余的从器件连接
到 MSB 的 DATA[15..8]。在字宽多器件 AP 配置中,主器件的 nCEO 管脚启用两个独立
的从器件菊花链,允许两个链同时被编程,如图 8-9 所示。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–27
图 8-9. 字宽多器件 AP 设置
VCCIO (1)
VCCIO (1)
VCCIO (1)
VCCIO (2)
10 k
VCCIO (2)
10 k
nCE
nCEO
nCE
nCEO
CONF_DONE
nSTATUS
nSTATUS
nCONFIG
CONF_DONE
nSTATUS
nCONFIG
nCE
nCONFIG
10 k
10 k
CONF_DONE
10 k
nCEO
N.C. (3)
GND
CLK
RST#
CE#
OE#
ADV#
WE#
WAIT
DQ[15:0]
A[24:1]
Numonyx P30/P33 Flash
DCLK
nRESET
FLASH_nCE
nOE
nAVD
nWE
I/O (5)
DATA[15..0]
PADD[23..0]
MSEL[3..0]
MSEL[3..0]
(4)
DQ[7..0]
DATA[7..0]
DCLK
Cyclone IV E
Master Device
(4)
DQ[7..0]
Cyclone IV E Slave Device
MSEL[3..0]
(4)
DATA[7..0]
DCLK
Cyclone IV E Slave Device
VCCIO (1)
Buffers (6)
nCE
nCE
nCEO
CONF_DONE
nSTATUS
nCONFIG
CONF_DONE
nSTATUS
nCONFIG
10 k
nCEO
N.C. (3)
DQ[15..8]
MSEL[3..0]
DATA[7..0]
DCLK
Cyclone IV E Slave Device
MSEL[3..0]
(4)
DQ[15..8]
(4)
DATA[7..0]
DCLK
Cyclone IV E Slave Device
图 8-9 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 将上拉电阻连接到 nCE 管脚所在的 I/O bank 上的 VCCIO 电源。
(3) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。您必须在 AP 模式中设置主器件和在 FPP 模式中设置从器件。要
连接 MSEL[3..0] 于 AP 模式中的主器件和 FPP 模式中的从器件,请参考第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(5) AP 配置在配置模式期间忽略了 WAIT 信号。然而,如果您在用户模式下以用户逻辑访问闪存,您可以可选地使用普通 I/O 监测
Numonyx P30 或 P33 闪存中的 WAIT 信号。
(6) 为 DATA[15..0] 和 DCLK 连接 Cyclone IV E 主器件和从器件之间的中继缓冲器。所有的 I/O 输入必须保持 4.1 V 的最大 AC 电压。
中继缓冲器的输出电阻必须符合最大过冲方程概括于 “ 配置和 JTAG 管脚的 I/O 要求 ” 第 8-5 页。
1
在一个多器件 AP 配置中,并行闪存和主器件之间的电路板走线长度必须遵循表 8-10 列
出的建议。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–28
所有目标器件的 nSTATUS 和 CONF_DONE 管脚与外部上拉电阻连接在一起,如第 8-26 页
图 8-8 和第 8-27 页图 8-9 所示。这些管脚是器件中的开漏双向管脚。当第一个器件
置 nCEO 有效 (在完成接收其所有的配置数据后),它释放其 CONF_DONE 管脚。然而,
链中的随后的器件保持此共享 CONF_DONE 线低电平,直到它们接收到各自的配置数
据。当链中的所有目标器件接收各自的配置数据和释放 CONF_DONE 时,在这条线上的
上拉电阻驱动高电平,并且所有器件同时进入初始化模式。
为 AP 接口连接并行闪存到 Cyclone IV E 器件的指南
对于单器件或多器件的 AP 配置,所支持的并行闪存和 Cyclone IV E 器件之间的电路
板走线长度和加载必须遵循表 8-10 列出的建议。这些建议也适用于多个总线器件的
AP 配置。
表 8-10. 对于 AP 配置的最大走线长度和加载
Cyclone IV E AP 管
脚
从 Cyclone IV E 器件到闪存器件的最
大电路板走线长度 (英寸)
最大电路板装载 (pF)
DCLK
6
15
DATA[15..0]
6
30
PADD[23..0]
6
30
nRESET
6
30
Flash_nCE
6
30
nOE
6
30
nAVD
6
30
nWE
6
30
I/O (1)
6
30
表 8-10 注释:
(1) AP 配置在配置模式闪存期间忽略了 WAIT 信号。然而,如果您在用户模式下以用户逻辑访问闪存,您
可以可选地使用普通 I/O 监测 Numonyx P30 或 P33 闪存中的 WAIT 信号。
配置多个总线主器件
与 AS 配置方案相类似,AP 配置方案支持对多个总线主器件的并行闪存。其它主器件要
获得 AP 配置总线的控制权时,必须将相关的 Cyclone IV E 器件的 nCONFIG 拉低至少
500 ns,以复位该器件,并且在 nCE 管脚覆盖弱 10-kΩ 下拉电阻。这样复位控制可以
使该 Cyclone IV E 器件的 AP 配置总线转为三态,此时其它主器件可以控制该 AP 配置
总线。其它主器件完成操作时,先释放该 AP 配置总线,然后释放 nCE 管脚,最后给
nCONFIG 一个低脉冲以重启配置活动。
在 AP 配置方案中,多个主器件共享并行闪存。与 AS 配置方案相类似,总线的控制协
商依赖 nCE 管脚。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–29
图 8-10 显示了多个总线主器件的 AP 配置。
图 8-10. 多个总线主器件的 AP 配置
CLK
RST#
CE#
OE#
ADV#
WE#
WAIT
DQ[15:0]
A[24:1]
I/O (7)
nCONFIG (8)
Other Master Device (6)
V
V
CCIO
(1)
V
CCIO
(1)
(1)
10 k
nCE
10 k
GND
CONF_DONE
nSTATUS
10 k
nCONFIG
10 k
CLK
RST#
CE#
OE#
ADV#
WE#
WAIT
DQ[15:0]
A[24:1]
CCIO
nCEO
DCLK (5)
nRESET
FLASH_nCE
nOE
nAVD
MSEL[3..0]
nWE
I/O (4)
DATA[15..0] (5)
PADD[23..0]
Numonyx P30/P33 Flash
(2)
(3)
Cyclone IV E
Master Device
图 8-10 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(3) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL[3..0],请参考第 8-9 页表 8-5。将 MSEL 管脚直接
连接到 VCCA 或者 GND。
(4) AP 配置在配置模式期间忽略了 WAIT 信号。然而,如果您在用户模式下以用户逻辑访问闪存,您可以可选地使用普通 I/O 监测
Numonyx P30 或 P33 闪存中的 WAIT 信号。
(5) 在一个多器件 AP 配置中级联 Cyclone IV E 器件时,为 DATA[15..0] 和 DCLK 连接主器件和从器件之间的中继缓冲器。所有的 I/O
输入必须保持 4.1 V 的最大 AC 电压。中继缓冲器的输出电阻必须符合最大过冲方程概括于 “ 配置和 JTAG 管脚的 I/O 要求 ” 第
8-5 页。
(6) 其它主器件必须符合最大过冲方程概括于 “ 配置和 JTAG 管脚的 I/O 要求 ” 第 8-5 页。
(7) 其它主器件通过驱动 nCE 高电平和 I/O 管脚上的高输出,可以控制 AP 配置总线。
(8) 其它主器件可以脉冲 nCONFIG,如果它在系统控制之内并且没有连接到 VCCIO。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–30
图 8-11 显示所推荐的多个总线主接口的平衡的星型布线 (balanced star
routing),以尽量最小化信号完整性问题。
图 8-11. 布线平衡星 (Balanced Star Routing)
External
Master Device
N (2)
DCLK
M (1)
N (2)
Cyclone IV E
Master Device
Numonyx Flash
图 8-11 注释:
(1) Altera 建议 M 不可超过 6 英寸,如 第 8-28 页表 8-10 列表所示。
(2) Altera 建议使用一个布线平衡星。保持 N 长度相等,并尽可能短以尽量降低传输线的反射噪声。 M 长度
可用于这个设置。
估算 AP 配置时间
AP 配置时间是由并行闪存到 Cyclone IV E 器件传输数据所需的时间控制的。这个并行
接口是由 Cyclone IV E DCLK 输入 (由一个内部振荡器生成的)的时钟决定。使用
40-MHz 的振荡器时, DCLK 的最小频率为 20 MHz (50 ns)。在字宽级联编程中,
DATA[15..0] 总线传输一个 16 位字,本质上节省了约 1/16 的 AS 配置的时间。公式 8-4 和
公式 8-5 显示了配置时间的计算。
公式 8-4.
maximum DCLK period
RBF Size ×  ----------------------------------------------------------- = 估算的最大配置时间
 16 bits per DCLK cycle 
公式 8-5.
50 ns
9,600,000 bits ×  ------------- = 30 ms
 16 bit
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–31
编程并行闪存
所支持的并行闪存是外部非易失性的配置器件。它们是工业标准的微处理器闪存。要
了解关于所支持的商用并行闪存系列,请参考第 8-22 页表 8-9。
Cyclone IV E 器件在单一或者多器件链使用具有闪存加载宏功能的 JTAG 接口支持在系
统编程闪存。板上智能主机或下载电缆在 Cyclone IV E 器件上使用 4 个 JTAG 管脚在
系统编程并行闪存,即使主机或下载电缆不能访问并行闪存的配置管脚。
f 要了解关于使用 Cyclone IV E 器件的 JTAG 管脚在系统编程并行闪存的详细信息,请参
阅 AN 478: Using FPGA-Based Parallel Flash Loader (PFL) with the Quartus II
Software.
在 AP 配置方案中,在所支持的并行闪存中代表 16 位字寻址时 (图 8-12),默认的配
置启动地址是 0×010000。在 Quartus II 软件中, 默认的配置启动地址是
0×020000,因为它代表一个 8 位字节寻址。Cyclone IV E 器件从字寻址 0×010000 中
配置,这相当于字节寻址 0×020000。
1
Quartus II 软件使用字节寻址为默认的配置启动地址。您必须将起始地址字段设置至
0×020000。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–32
默认的配置启动地址允许系统在闪存映射中使用特别的参数模块。参数模块在存储器
映射的顶部或者底部。图 8-12 显示了在 AP 配置方案中的配置启动地址。您可以使用
APFC_BOOT_ADDR JTAG 指令,将默认配置的默认启动地址 0×010000 更改至任何所需的
地址。要了解关于 APFC_BOOT_ADDR JTAG 指令的更多信息,请参阅 “JTAG 指令 ” 第
8-57 页。
图 8-12. 在 AP 闪存映射中的配置启动地址
Bottom Parameter Flash Memory
Top Parameter Flash Memory
Other data/code
128-Kbit
parameter area
Other data/code
Cyclone IV E
Default
Boot
Address
Cyclone IV E
Default
Boot
Address
Configuration
Data
Configuration
Data
x010000 (1)
x00FFFF
x010000 (1)
x00FFFF
Other data/code
128-Kbit
parameter area
16-bit word
x000000
bit[15]
x000000
bit[0]
16-bit word
bit[15]
bit[0]
图 8-12 注释:
(1) 当代表 16 位字寻址时,默认的配置启动地址是 x010000。
PS 配置
您可以在 Cyclone IV 器件的一台外部智能主机,例如 MAX® II 器件、闪存微处理器或
者下载电缆中执行 PS 配置。在 PS 方案中,一台外部主机控制配置。配置数据通过各
个 DCLK 上升沿的 DATA[0] 计时到目标 Cyclone IV 器件中。
如果您的系统中已经包含了一个公共闪存接口 (CFI),您也可以将其使用为
Cyclone IV 器件的配置存储器。MAX II PFL 功能提供一种有效的方法来编程 CFI 闪存
器件,通过 JTAG 接口和逻辑控制从闪存器件到 Cyclone IV 器件的配置。
f 要了解关于 PFL 的详细信息,请参阅 AN 386: Using the Parallel Flash Loader with
the Quartus II Software。
1
Cyclone IV 器件手册,
卷 1
Cyclone IV 器件不支持为 PS 配置增强配置器件。
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–33
使用外部主机的 PS 配置
在 PS 配置方案中,您可以使用一台智能主机,例如 MAX II 器件或者微处理器,控制
从存储器件 (例如闪存)传输配置数据到目标 Cyclone IV 器件。您可以将配置数据存
储为 .rbf、 .hex 或 .ttf 的格式。
图 8-13 显示了配置接口在 Cyclone IV 器件与外部主机器件之间的连接。
图 8-13. 使用外部主机进行单器件 PS 配置
Memory
VCCIO (1) VCCIO (1)
ADDR
Cyclone IV
Device
DATA[0]
10 kΩ
External Host
(MAX II Device or
Microprocessor)
10 kΩ
GND
MSEL[ ]
(3)
CONF_DONE
nSTATUS
nCE
nCEO
N.C. (2)
DATA[0] (4)
nCONFIG
DCLK (4)
图 8-13 注释:
(1) 将上拉电阻连接到电源,对其器件提供一个可接受的输入信号。VCC 必须足够高以满足器件和外部主机
上的 VIH 规范的 I/O。
(2) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(3) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚,请参考第 8-8 页
表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(4) 所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。 DATA[0] 和 DCLK 必须符合第 8-5 页公式 8-1 所概述的
最大过冲方程。
要开始配置,外部主机器件必须在 nCONFIG 管脚中产生一个由低至高的跳变。当拉高
nSTATUS 时,外部主机器件必须一次一个位地将配置数据放置在 DATA[0] 上。如果您使
用的配置数据格式为 .rbf、.ttf 或 .hex,您必须首先发送每个数据字节的 LSB。例
如,如果 .rbf 包含的字节序列为 02 1B EE 01 FA,那么您必须发送到器件的串行比特
流是 :
0100-0000 1101-1000 0111-0111 1000-0000 0101-1111
Cyclone IV 器件在 DATA[0] 上接收配置数据,时钟在 DCLK 上被接收。在 DCLK 的上升
沿,数据被锁存到器件中。数据不断送入目标器件,直到 CONF_DONE 变高以及器件进
入初始化状态。
1
在 CONF_DONE 变高后,需要两个 DCLK 的下降沿以开始初始化器件。
当初始化完成后, INIT_DONE 被释放和拉高。外部主机器件必须能够检测由低至高的
跳变,其标志着器件已进入用户模式。当初始化完成后,器件进入用户模式。在用户
模式下,用户 I/O 管脚不再有弱上拉电阻和功能分配在您的设计中。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–34
要确保 DCLK 和 DATA[0] 在配置的最后没有被悬空,MAX II 器件必须驱动它们为高或
低电平,只要适合您的板级。 DATA[0] 管脚在配置后可作为用户 I/O 管脚。在 PS 方案
中, DATA[0] 管脚在用户模式下默认为三态,它必须由外部主机器件驱动。要在
Quartus II 软件中更改这种默认选项,选择 Device and Pin Options 对话框中的
Dual-Purpose Pins 标签。
配置时钟 (DCLK)的速度必须低于指定的系统频率,以确保正确的配置。无上限 DCLK
周期的存在,意味着您可以通过停止 DCLK 无限期地暂停配置。
外部主机器件也可以监测 CONF_DONE 和 INIT_DONE 以确保成功配置。 CONF_DONE 管脚
必须由外部器件监控以便检测错误和确定编程序是否完成。如果所有的配置数据被发
送后,但 CONF_DONE 或 INIT_DONE 没有变高,外部器件必须对目标器件进行重配置。
图 8-14 显示了如何使用一个外部主机器件配置多个器件。这个电路与一个单一器件的
PS 配置电路相似,除了 Cyclone IV 器件在多个器件配置中级联。
图 8-14. 使用外部主机进行多器件 PS 配置
Memory
VCCIO (1) VCCIO (1)
VCCIO (2)
Cyclone IV Device 1
ADDR DATA[0]
10 k
10 k
(4)
MSEL[ ]
(4)
CONF_DONE
nSTATUS
nCEO
nCE
CONF_DONE
nSTATUS
nCEO
nCE
N.C. (3)
DATA[0] (5)
nCONFIG
DCLK (5)
DATA[0] (5)
nCONFIG
DCLK (5)
MSEL[ ]
External Host
(MAX II Device or
Microprocessor)
Cyclone IV Device 2
10 k
GND
Buffers (5)
图 8-14 注释:
(1) 将上拉电阻连接到电源,对其链上的所有器件提供一个可接受的输入信号。VCC 必须足够高以满足器件
和外部主机上的 VIH 规范的 I/O。
(2) 连接上拉电阻至 nCE 管脚所在的 I/O bank 上的 VCCIO 电源。
(3) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚,请参考第 8-8 页
表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(5) 所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。 DATA[0] 和 DCLK 必须符合第 8-5 页公式 8-1 所概述的
最大过冲方程。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–35
在多器件配置链中完成第一个器件配置后,其 nCEO 管脚驱动至低电平以激活第二个器
件中的 nCE 管脚,提示第二个器件开始进行配置。链中的第二个器件开始在一个时钟
周期中的配置。因此,对于外部主机器件,传输的数据的目的地是透明的。 nCONFIG、
nSTATUS、 DCLK、 DATA[0] 和 CONF_DONE 配置管脚都连接到链中的每个器件上。为了确
保信号的完整性以及防止时钟的偏斜问题,配置信号可能需要缓冲。确保 DCLK 和
DATA 线是缓冲的。所有的器初始化并且同时进入用户模式,因为所有的 CONF_DONE 管
脚都是连接在一起的。
如果任何器件检测到一个错误,整条链的配置都将停止,您必须对其进行重配置,因
为所有的 nSTATUS 和 CONF_DONE 管脚都是连接在一起的。例如,如果第一个器件在
nSTATUS 上标记一个错误,它将通过拉低 nSTATUS 管脚,重设整条链。这种行为与一个
单器件检测错误相似。
在您的系统中您可以有多个器件包含相同的配置数据。为了支持这项配置方案,所有
的 nCE 输入都连接到 GND,然而悬空 nCEO 管脚。 nCONFIG、 nSTATUS、 DCLK、 DATA[0]
和 CONF_DONE 配置管脚都连接到链中的每个器件上。为了确保信号的完整性以及防止
时钟的偏斜问题,配置信号可能需要缓冲。确保 DCLK 和 DATA 线是缓冲的。器件必须
具有相同的密度和封装。所有的器件同时开始和完成配置。
图 8-15 显示了当两个 Cyclone IV 器件同时接收相同的配置数据时的多器件 PS 配置。
图 8-15. 当两个器件接收相同的数据时的多器件 PS 配置
Memory
VCCIO (1) VCCIO (1)
ADDR
Cyclone IV Master Device
Cyclone IV Slave Device
DATA[0]
10 k
10 k
MSEL[ ]
External Host
(MAX II Device or
Microprocessor)
CONF_DONE
nSTATUS
nCE
nCEO
GND
DATA[0] (4)
nCONFIG
DCLK (4)
(3)
(3)
MSEL[ ]
CONF_DONE
nSTATUS
nCE
nCEO
N.C. (2)
N.C. (2)
GND
DATA[0] (4)
nCONFIG
DCLK (4)
Buffers (4)
图 8-15 注释:
(1) 您必须将上拉电阻连接到电源,对其链上的所有器件提供一个可接受的输入信号。VCC 必须足够高以满
足器件和外部主机上的 VIH 规范的 I/O。
(2) 当配置相同配置数据到多个器件中时,悬空两种器件的 nCEO 管脚或者将其作为用户 I/O 管脚。
(3) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚,请参考第 8-8 页
表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(4) 所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。 DATA[0] 和 DCLK 必须符合第 8-5 页公式 8-1 所概述的
最大过冲方程。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–36
PS 配置时序
一个 PS 配置必须满足建立和保持时间参数以及最大化时钟频率。当使用一个微处理器
或其它智能主机控制 PS 接口时,确保您满足这些时序的要求。图 8-16 显示了当使用
一个外部主机器件时,PS 配置的时序波形。
(1)
图 8-16. PS 配置时序波形
tCF2ST1
tCFG
tCF2CK
nCONFIG
nSTATUS (2)
tSTATUS
tCF2ST0
t
CLK
CONF_DONE (3)
tCF2CD
tST2CK
tCH tCL
DCLK (4)
tDH
Bit 0 Bit 1 Bit 2 Bit 3
DATA[0]
Bit n
(5)
tDSU
User I/O
Tri-stated with internal pull-up resistor
User Mode
INIT_DONE
tCD2UM
图 8-16 注释:
(1) 这个波形的开始,显示了在用户模式下的器件。在用户模式下, nCONFIG、 nSTATUS 和 CONF_DONE 处在
逻辑高水平。 当 nCONFIG 被拉低时,意味着一个重配置周期的开始。
(2) 上电后,Cyclone IV 器件在 POR 延迟期间保持 nSTATUS 低电平。
(3) 上电后,配置之前和配置期间, CONF_DONE 处于低电平。
(4) 在用户模式下,使用 PS 配置方案时驱动 DCLK 或高或低,取其方便而用。当使用 AS 配置方案时, DCLK
是一个 Cyclone IV 器件的输出管脚并且必须不被外部驱动。
(5) 配置完成后,不可悬空 DATA[0] 管脚。驱动 DATA[0] 或高或低,取其方便而用。
表 8-11 列出了 Cyclone IV 器件的 PS 配置时序参数
表 8-11. Cyclone IV 器件的 PS 配置时序参数
(1/2) (1)
最低
符号
参数
最高
Cyclone IV
Cyclone IV E
Cyclone IV
Cyclone IV E
(2)
(3)
(2)
(3)
单位
tCF2CD
nCONFIG 低电平到
CONF_DONE 低电平
—
500
ns
tCF2ST0
nCONFIG 低电平到
nSTATUS 低电平
—
500
ns
tCFG
nCONFIG 低脉冲宽度
500
—
ns
tSTATUS
nSTATUS 低脉冲宽度
45
230 (4)
µs
tCF2ST1
nCONFIG 高电平到
nSTATUS 高电平
—
230 (5)
µs
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–37
表 8-11. Cyclone IV 器件的 PS 配置时序参数
(2/2) (1)
最低
符号
参数
tCF2CK
nCONFIG 高电平到
DCLK 的上升沿
tST2CK
最高
Cyclone IV
Cyclone IV E
Cyclone IV
Cyclone IV E
(2)
(3)
(2)
(3)
单位
230 (4)
—
µs
nSTATUS 高电平到 DCLK
的上升沿
2
—
µs
tDH
DCLK 的上升沿后,数据
保持时间
0
—
ns
tCD2UM
CONF_DONE 高电平到用
户模式 (6)
300
650
µs
tCD2CU
CONF_DONE 高电平到启
用 CLKUSR
4 × 最大 DCLK 周期
—
—
tCD2UMC
CONF_DONE 高电平到用
户模式,打开
CLKUSR 选项
tCD2CU + (3,192 × CLKUSR 周期 )
—
—
tDSU
DCLK 的上升沿之前,数
据建立时间
tCH
5
8
—
—
ns
DCLK 高时间
3.2
6.4
—
—
ns
tCL
DCLK 低时间
3.2
6.4
—
—
ns
tCLK
DCLK 周期
7.5
15
—
—
ns
fMAX
DCLK 频率 (7)
—
—
133
66
MHz
表 8-11 注释:
(1) 这些是初始信息。
(2) 应用于 1.2-V 核心电压的 Cyclone IV GX 和 Cyclone IV E 器件。
(3) 应用于 1.0-V 核心电压的 Cyclone IV E 器件。
(4) 如果您没有延迟通过延长 nCONFIG 或 nSTATUS 低脉冲宽度的配置,这个值是适用的。
(5) 如果您没有延迟保持外部 nSTATUS 低电平的配置,这个值是适用的。
(6) 最低和最高的数量,仅在您选择内部振荡器作为启动器件的时钟源时适用。
(7) 1.0-V 核心电压的 Cyclone IV E 器件与 1.2-V 核心电压的 Cyclone IV GX 器件相比具有较慢的 FMAX。
使用下载电缆的 PS 配置
这一部分中,通用术语 “ 下载电缆 ” 包括了 Altera 的 USB-Blaster 的 USB 端口下载
电缆,MasterBlaster ™串行和 USB 通讯电缆,ByteBlaster II 并口下载电缆,
ByteBlasterMV ™并口下载电缆以及 EthernetBlaster 通讯电缆。
在使用下载电缆的 PS 配置中,一台智能主机 (例如一台 PC)通过下载电缆,从储存
器件传输数据到 Cyclone IV 器件。
编程硬件或下载电缆,然后一次一个位地将配置数据放置在器件的 DATA[0] 管脚上。
配置数据被计入目标器件,直到 CONF_DONE 变高。 CONF_DONE 管脚必须有一个 10-kΩ
的外部上拉电阻器以便对器件进行初始化。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–38
当您使用下载电缆时,对 Auto-restart configuration after error 选项的设置不影
响配置周期,因为如果发生错误,您必须在 Quartus II 软件中手动重启配置。此外,
Enable user-supplied start-up clock (CLKUSR) 选项不影响器件的初始化,因为用
Quartus II 编程器和下载电缆编程此器件时,这一选项在 .sof 中被被禁用。因此,如
果您打开 CLKUSR 选项,当您用 Quartus II 编程器和下载电缆配置此器件时,您不用
为 CLKUSR 提供时钟。
图 8-17 显示了 Cyclone IV 器件使用下载电缆的 PS 配置
图 8-17. 使用下载电缆的 PS 配置
VCCA (1)
(2)
VCCA (1)
10 kΩ
10 kΩ
VCCA (1)
VCCA (1)
VCCA (1)
10 kΩ
10 kΩ
10 kΩ
(2)
Cyclone IV Device
CONF_DONE
nSTATUS
MSEL[ ] (5)
nCE
nCEO
N.C. (4)
Download Cable 10-Pin Male
Header (Top View)
GND
DCLK
DATA[0]
nCONFIG
Pin 1
VCCA (6)
GND
VIO (3)
Shield
GND
图 8-17 注释:
(1) 您必须将上拉电阻连接到与 VCCA 相同的电源上。
(2) 仅需要 DATA[0] 和 DCLK 中的上拉电阻,如果下载电缆是使用在您电路板上唯一的配置方案。这保证了
DATA[0] 和 DCLK 在配置完成后不被悬空。例如,如果您也使用一个配置器件,DATA[0] 和 DCLK 中的上拉
电阻是不需要的。
(3) 管脚 6 插头对于 MasterBlaster 的输出驱动是一个 VIO 参考电压。VIO 必须与器件 VCCA 相匹配。对于这个
值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。与 USB-Blaster、
ByteBlaster II、ByteBlaster MV 和 EthernetBlaster,这个管脚是不连接的。
(4) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(5) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要为 PS 配置方案连接 MSEL 管脚,请
参考第 8-8 页表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(6) 利用 VCCA 上 2.5-V 的供电上电 ByteBlaster II、USB-Blaster 或者 ByteBlasterMV 电缆的 VCCA 的。第三
方编程员必须切换到 2.5 V。管脚 4 插头是 MasterBlaster 电缆的 VCC 供电电源。MasterBlaster 电缆可
以接收电路板上 5.0- 或 3.3- V 的电源,DC 供电电源或者 USB 电缆上的 5.0 V 电源。对于这个值,请参
阅 MasterBlaster Serial/USB Communications Cable User Guide。
您可以使用一条下载电缆配置多个 Cyclone IV 器件的配置管脚。 nCONFIG、 nSTATUS、
DCLK、DATA[0] 和 CONF_DONE 连接链中的每个器件。因为所有 CONF_DONE 管脚都连接在
一起 , 所以链上所有的器件同时使用和进入用户模式。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–39
此外,如果任何器件检测到错误,整条链将停止配置,这是由于 nSTATUS 管脚都连接
在一起。图 8-18 显示了多个 Cyclone IV 器件,使用 MasterBlaster、USB- Blaster、
ByteBlaster II 或者 ByteBlasterMV 电缆进行的 PS 配置。
图 8-18. 使用下载电缆的多器件 PS 配置
VCCA (1)
10 kΩ
(2)
VCCA (1)
VCCA (1)
10 kΩ
10 kΩ
(2)
VCCIO (4)
10 kΩ
VCCA (1)
VCCA (1)
Download Cable
10-Pin Male Header
(Passive Serial Mode)
10 kΩ
Cyclone IV Device 1
CONF_DONE
nSTATUS
DCLK
MSEL[ ] (6)
Pin 1
VCCA (7)
GND
VIO (3)
nCE
10 kΩ
GND
DATA[0]
nCONFIG
nCEO
GND
Cyclone IV Device 2
CONF_DONE
nSTATUS
MSEL[ ]
DCLK
(6)
nCE
nCEO
N.C. (5)
DATA[0]
nCONFIG
图 8-18 注释:
(1) 您必须将上拉电阻连接到与 VCCA 相同的电源上。
(2) 仅需要 DATA[0] 和 DCLK 中的上拉电阻,如果下载电缆是使用在您电路板上唯一的配置方案。这保证了
DATA[0] 和 DCLK 在配置完成后不被悬空。例如,如果您也使用一个配置器件,DATA[0] 和 DCLK 中的上拉
电阻是不需要的。
(3) 管脚 6 插头对于 MasterBlaster 的输出驱动是一个 VIO 参考电压。VIO 必须与器件 VCCA 相匹配。对于这个
值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。当使用 ByteBlasterMV 下
载电缆时,这个管脚是不连接的。当使用 USB- Blaster、ByteBlaster II 和 EthernetBlaster 电缆时,
这个管脚连接到 nCE,当它用于 AS 编程时。否则,它是不相连接的。
(4) 将上拉电阻连接到 nCE 管脚所在的 I/O bank 上的 VCCIO 电源。
(5) 将链中最后一个器件上的 nCEO 管脚悬空或作为用户 I/O 管脚。
(6) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要为 PS 配置方案连接 MSEL 管脚,请
参考第 8-8 页表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(7) 利用 VCCA 上 2.5-V 的供电上电 ByteBlaster II、USB-Blaster 或者 ByteBlasterMV 电缆的 VCC。第三方
编程员必须切换到 2.5 V。管脚 4 插头是 MasterBlaster 电缆的 VCC 供电电源。MasterBlaster 电缆可以
接收电路板上 5.0- 或 3.3- V 的电源,DC 供电电源或者 USB 电缆上的 5.0 V 电源。对于这个值,请参阅
MasterBlaster Serial/USB Communications Cable User Guide。
FPP 配置
设计 Cyclone IV 器件的 FPP 配置的目的是满足日益增加的对于加快配置时间的需求。
Cyclone IV 器件与每个时钟周期接收字宽的配置数据的能力一起被设计。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–40
您可以利用同一台智能主机 (如:一台 MAX II 器件或具有闪存的微处理器)执行
Cyclone IV 器件的 FPP 配置。如果您的系统已包含一个 CFI 闪存,您也可以把它用在
Cyclone IV 器件配置的存储上。MAX II 器件中的 MAX II PFL 的功能为编程 CFI 闪存
器件提供一种有效的方法,通过 JTAG 接口和逻辑以控制从闪存器件到 Cyclone IV 器
件的配置。
f 要了解关于PFL的详细信息,请参考 AN 386: Using the Parallel Flash Loader with
the Quartus II Software。
1
FPP 配置支持 EP4CGX30 (仅适用于 F484 封装)、EP4CGX50、EP4CGX75、EP4CGX110、
EP4CGX150 和所有的 Cyclone IV E 器件。
1
FPP 配置不支持 Cyclone IV E 器件的 E144 封装。
1
Cyclone IV 器件不支持为 FPP 配置增强配置器件。
使用外部主机进行 FPP 配置
使用一台外部主机进行 FPP 配置,提供了一种快速的方法来配置 Cyclone IV 器件。在
FPP 配置方案中,您可以使用一台外部主机器件来控制从存储器件 (例如:闪存)到
目标 Cyclone IV 器件的配置数据的传输。您可以存储 .rbf、.hex 或 .ttf 格式的配置
数据。当使用外部主机时,控制配置过程的设计,例如从闪存中获取数据并且把它发
送到器件,必须存储于外部主机的器件中。图 8-19 显示了 Cyclone IV 器件和单器件
配置的外部器件之间对于配置接口的连接。
图 8-19. 使用外部主机进行单器件 FPP 配置
Memory
VCCIO(1) VCCIO(1)
ADDR
DATA[7..0]
10 k
External Host
(MAX II Device or
Microprocessor)
Cyclone IV Device
10 k
GND
MSEL[3..0]
(3)
CONF_DONE
nSTATUS
nCEO
nCE
N.C. (2)
DATA[7..0] (4)
nCONFIG
DCLK (4)
图 8-19 注释:
(1) 将上拉电阻连接到电源,对器件提供一个可接受输入信号的电源。VCC 必须足够高以满足器件和外部主
机上的 VIH 规范的 I/O。
(2) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(3) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要为 PS 配置方案连接 MSEL 管脚,请
参考第 8-8 页表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(4) 所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。 DATA[7..0] 和 DCLK 必须符合第 8-5 页公式 8-1 所概
述的最大过冲方程。
当 nSTATUS 被释放后,器件准备接收配置数据,配置阶段开始。 当 nSTATUS 拉高时,
外部主机器件一次一个位地将配置数据放置在 DATA[7..0] 管脚上。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–41
Cyclone IV 器件接收 DATA[7..0] 管脚的配置数据和 DCLK 管脚的时钟。数据被锁存在
DCLK 上升沿的器件中。数据不断锁定到目标器件,直到 CONF_DONE 变高。CONF_DONE 管
脚在 FPP 配置模式中提早变高一个字节。最后一个字节对于串行配置 (AS 和 PS)模式
是必需的。
1
在 CONF_DONE 变高后,需要两个 DCLK 下降沿,以开始器件的初始化。
在 CLKUSR 提供一个时钟,不影响配置的过程。在 CONF_DONE 管脚变高后, CLKUSR 在
时间指定为 tCD2CU 后被启用。经过这段时间后,Cyclone IV 器件需要 3,192 个时钟周
期以正确进行初始化和进入用户模式。要了解关于支持 Cyclone IV 器件的 CLKUSR fMAX
值的详细信息,请参考第 8-44 页表 8-12。
当初始化完成后, INIT_DONE 管脚被释放和拉高。外部主机必须能检测到这种从低至
高的跳变,其暗示器件已进入到用户模式。当初始化完成后,器件进入用户模式。在
用户模式下,用户 I/O 管脚不再有弱上拉电阻和分配的功能于您的设计中。
为了确保 DCLK 和 DATA[0] 在配置的最后没有被悬空 ,MAX II 器件必须驱动其或高或
低,只要适合您的板级。 DATA[0] 管脚在配置完成后可用为用户 I/O 管脚。当您在
Quartus II 软件中选择 FPP 方案时, DATA[0] 管脚在用户模式下默认为三态,并且必
须由外部主机器件驱动。要在 Quartus II 软件中改变这一默认选项,选择 Device and
Pin Options 对话框中的 Dual-Purpose Pins 标签。
DCLK 的速度必须低于指定的系统频率,以确保正确的配置。无上限 DCLK 周期的存在,
意味着您可以通过中止 DCLK 的不定时间量来暂停配置。
外部主机器件也可以监测 CONF_DONE 和 INIT_DONE 管脚,以确保成功配置。
CONF_DONE 管脚必须由外部器件监控以检测错误,并确定编程的完成时间。如果所有的
配置数据发送后,但 CONF_DONE 或者 INIT_DONE 没有变高,外部器件必须重配置目标
器件。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–42
图 8-20 显示了如何利用一个 MAX II 器件配置多个器件。这个电路与单器件的 FPP 配
置电路相类似,除了 Cyclone IV 器件级联的多器件配置。
图 8-20. 使用外部主机的多器件 FPP 配置
Memory
VCCIO (1) VCCIO (1)
ADDR DATA[7..0]
Cyclone IV Device 2
10 k
10 k
External Host
(MAX II Device or
Microprocessor)
VCCIO (2)
Cyclone IV Device 1
10 k
MSEL[3..0]
(4)
MSEL[3..0]
(4)
CONF_DONE
nSTATUS
nCEO
nCE
CONF_DONE
nSTATUS
nCEO
nCE
N.C. (3)
DATA[7..0] (5)
nCONFIG
DCLK (5)
DATA[7..0] (5)
nCONFIG
DCLK (5)
GND
Buffers (5)
图 8-20 注释:
(1) 您必须将上拉电阻连接到电源,对其链上的所有器件提供一个可接受的输入信号。VCC 必须足够高以满
足器件和外部主机上的 VIH 规范的 I/O。
(2) 将上拉电阻连接到 nCE 管脚所在的 I/O bank 上的 VCCIO 电源。
(3) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚,请参考第 8-8 页
表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(5) 所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。 DATA[7..0] 和 DCLK 必须符合第 8-5 页公式 8-1 所概
述的最大过冲方程。
在多器件配置链中完成第一个器件配置后,其 nCEO 管脚驱动至低电平以激活第二个器
件中的 nCE 管脚,提示第二个器件开始进行配置。链中的第二个器件开始在一个时钟
周期中的配置;因此,对于 MAX II 器件,传输的数据的目的地是透明的。所有其它的
配置管脚 (nCONFIG、 nSTATUS、 DCLK、 DATA[7..0] 和 CONF_DONE)都连接到链中的
每个器件上。配置信号可能需要缓冲,以确保信号的完整性和防止时钟的偏斜问题。
确保 DCLK 和 DATA 线是缓冲的。所有的器件初始化并且同时进入用户模式,因为所有
器件的 CONF_DONE 管脚都是连接在一起的。
所有的 nSTATUS 和 CONF_DONE 管脚都是连接在一起的,如果任何器件检测到一个错
误,整条链的配置都将停止并必须进行重配置。例如,如果第一个器件在 nSTATUS 上
标记一个错误,它将通过拉低 nSTATUS 管脚,重设整条链。这种行为与一个单器件检
测错误相似。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–43
图 8-21 显示了当两个 Cyclone IV 器件接收相同的配置数据时的多器件 FPP 配置。配
置管脚 (nCONFIG、 nSTATUS、 DCLK、 DATA[7..0] 和 CONF_DONE)被连接到链中的每
个器件上。配置信号可能需要缓冲,以确保信号的完整性和防止时钟的偏斜问题。确
保 DCLK 和 DATA 线是缓冲的。器件必须具有相同的密度和封装。所有的器件同时开始
和完成配置。
图 8-21. 当两个器件接收相同的数据时,使用外部主机的多器件 FPP 配置
Memory
VCCIO (1)
VCCIO (1)
Cyclone IV Device 1
Cyclone IV Device 2
ADDR DATA[7..0]
10 k
10 k
MSEL[3..0]
External Host
(MAX II Device or
Microprocessor)
CONF_DONE
nSTATUS
nCEO
nCE
GND
(3)
N.C. (2)
GND
DATA[7..0] (4)
nCONFIG
DCLK (4)
MSEL[3..0]
(3)
CONF_DONE
nSTATUS
nCEO
nCE
N.C. (2)
DATA[7..0] (4)
nCONFIG
DCLK (4)
Buffers (4)
图 8-21 注释:
(1) 您必须将上拉电阻连接到电源,对其链上的所有器件提供一个可接受的输入信号。VCC 必须足够高以满
足器件和外部主机上的 VIH 规范的 I/O。
(2) 悬空两个器件上的 nCEO 管脚或者将其作为用户 I/O 管脚,当配置相同的配置数据到多器件中时。
(3) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚,请参考第 8-8 页
表 8-4 和第 8-9 页表 8-5。将 MSEL 管脚直接连接到 VCCA 或者 GND。
(4) 所有的 I/O 输入必须保持最高 4.1 V 的 AC 电压。 DATA[7..0] 和 DCLK 必须符合第 8-5 页公式 8-1 所概
述的最大过冲方程。
您可以使用一个单配置链,对 Cyclone IV 器件与其它支持 FPP 配置的 Altera 器件进
行配置。要确保链上所有的器件同时完成配置 , 或者一个器件上标记的错误开始对所
有器件进行重配置,将所有的 CONF_DONE 和 nSTATUS 管脚连接在一起。
f 要了解关于在相同配置链中配置多个 Altera 器件的详细信息,请参阅配置手册第 2 卷中
的 Configuring Mixed Altera FPGA Chains 。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–44
FPP 配置时序
图 8-22 显示了当使用一个外部主机时,FPP 配置的时序波形。
图 8-22. FPP 配置时序波形 (1)
tCF2ST1
tCFG
tCF2CK
nCONFIG
nSTATUS (2)
tSTATUS
tCF2ST0
t
CLK
CONF_DONE (3)
tCF2CD
tST2CK
tCH tCL
(4)
DCLK
tDH
DATA[7..0]
Byte 0
Byte 1
Byte 2
Byte 3
Byte n-1
(5)
Byte n
User Mode
tDSU
User I/O
User Mode
Tri-stated with internal pull-up resistor
INIT_DONE
tCD2UM
图 8-22 注释:
(1) 这个波形的开始,显示了在用户模式下的器件。在用户模式下, nCONFIG、 nSTATUS 和 CONF_DONE 处在
逻辑高水平。 当 nCONFIG 被拉低时,意味着一个重配置周期的开始。
(2) 上电后,Cyclone IV 器件在 POR 延迟期间保持 nSTATUS 低电平。
(3) 上电后,配置之前和配置期间, CONF_DONE 处于低电平。
(4) 配置完成后,不可悬空 DCLK。驱动其至高或低,取其方便而用。
(5) DATA[7..0] 在配置完成后可用为用户 I/O 管脚,管脚的状态取决于复用管脚的设置。
表 8-12 列出了 Cyclone IV 器件的 FPP 配置时序参数。
表 8-12. Cyclone IV 器件的 FPP 时序参数
(1/2)(1)
最低
符号
参数
Cyclone IV (2)
最高
Cyclone IV E
(3)
Cyclone IV (2)
Cyclone IV E
单位
(3)
tCF2CD
nCONFIG 低电平到
CONF_DONE 低电平
—
500
ns
tCF2ST0
nCONFIG 低电平到
nSTATUS 低电平
—
500
ns
tCFG
nCONFIG 低脉冲宽
度
500
—
ns
tSTATUS
nSTATUS 低脉冲宽
度
45
230 (4)
µs
tCF2ST1
nCONFIG 高电平到
nSTATUS 高电平
—
230 (5)
µs
tCF2CK
nCONFIG 高电平到
DCLK 的上升沿
230 (4)
—
µs
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
表 8-12. Cyclone IV 器件的 FPP 时序参数
8–45
(2/2)(1)
最低
符号
参数
Cyclone IV (2)
最高
Cyclone IV E
(3)
Cyclone IV (2)
Cyclone IV E
单位
(3)
tST2CK
nSTATUS 高电平到
DCLK 的上升沿
2
—
µs
tDH
DCLK 的上升沿后,
数据保持时间
0
—
ns
tCD2UM
CONF_DONE 高电平
到用户模式 (6)
300
650
µs
tCD2CU
CONF_DONE 高电平
到启用 CLKUSR
4 × 最大 DCLK 周期
—
—
tCD2UMC
CONF_DONE 高电平
到用户模式,打开
CLKUSR 选项
—
—
tDSU
DCLK的上升沿之前,
数据建立时间
tCH
tCD2CU + (3,192 × CLKUSR 周期 )
5
8
—
—
ns
DCLK 高时间
3.2
6.4
—
—
ns
tCL
DCLK 低时间
3.2
6.4
—
—
ns
tCLK
DCLK 周期
7.5
15
—
—
ns
f MAX
DCLK 频率 (7)
—
—
133
66
MHz
表 8-12 注释:
(1) 这些是初始信息。
(2) 应用于 1.2-V 核心电压的 Cyclone IV GX 和 Cyclone IV E 器件。
(3) 应用于 1.0-V 核心电压的 Cyclone IV E 器件。
(4) 如果您没有延迟通过延长 nCONFIG 或 nSTATUS 低脉冲宽度的配置,这个值是适用的。
(5) 如果您没有延迟保持外部 nSTATUS 低电平的配置,这个值是适用的。
(6) 最低和最高的数量,仅在您选择内部振荡器作为启动器件的时钟源时适用。
(7) 1.0-V 核心电压的 Cyclone IV E 器件与 1.2-V 核心电压的 Cyclone IV GX 器件相比具有较慢的 FMAX。
JTAG 配置
JTAG 为边界扫描测试(BST)开发了一种规范。BST 架构所提供的性能,有效地测试了
PCB 上组件的引线间距的严密性。在器件正常操作的情况下,BST 架构可以测试管脚的
连接,无需使用物理测试探针和采集功能数据。您也可以使用 JTAG 电路把配置数据移
位到器件中。Quartus II 软件在 Quartus II 软件编程中使用下载电缆为 JTAG 配置自
动生成 .sof 文件。
f 要了解关于 JTAG 边界扫描测试的详细信息,请参阅 JTAG Boundary-Scan Testing for
Cyclone IV Devices 章节。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–46
JTAG 指令优先于其它任何的配置模式。因此,JTAG 配置可以发生,无需等待其它配置
模式的完成。例如,如果您尝试在 PS 配置期间,对 Cyclone IV 器件进行 JTAG 配置,
PS 配置终止,JTAG 配置开始。如果 MSEL 管脚被设置在 AS 模式中,Cyclone IV 器件在
JTAG 配置发生时,不会输出一个 DCLK 信号。
对于在 JTAG 模式中的器件操作所需的四个管脚为 TDI、 TDO、 TMS 和 TCK。所有的
JTAG 输入管脚都由 VCCIO 管脚供电并且仅支持 LVTTL I/O 标准。所有用户 I/O 管脚在
JTAG 配置期间均处于三态。表 8-13 说明了每个 JTAG 管脚的功能。
表 8-13. 专用的 JTAG 管脚
管脚名称
管脚类型
说明
TDI
测试数据输
入
串行输入管脚的说明以及测试和编程数据。数据移入到 TCK 的上升沿。如果在电路板上不需要
JTAG 接口,JTAG 电路被禁用连接此管脚至 VCC。 TDI 管脚具有内部弱上拉电阻 (通常为 25 kΩ)。
TDO
测试数据输
出
串行数据输出管脚的说明以及测试和编程数据。数据在 TCK 的下降沿移出。如果数据没有从器件中
被移出,此管脚处于三态。如果在电路板上不需要 JTAG 接口,悬空此管脚以禁用 JTAG 电路。
TMS
测试模式选
择
输入管脚所提供的控制信号,以确认 TAP 控制状态机的跳变。状态机上的跳变发生在 TCK 的上升
沿。因此, TMS 必须设置在 TCK 的上升沿之前。 TMS 在 TCK 的上升沿中被评估。如果在电路板
上不需要 JTAG 接口,JTAG 电路被禁用连接此管脚至 VCC。 TMS 管脚具有内部弱上拉电阻 (通常为
25 kΩ)。
TCK
测试时钟输
入
时钟输入至 BST 电路。一些操作发生在上升沿,而其它的则发生在下降沿。如果在电路板上不需要
JTAG 接口,JTAG 电路被禁用连接此管脚至 GND。 TCK 管脚具有内部弱下拉电阻。
您可以通过使用 USB-Blaster、MasterBlaster、ByteBlaster II 或 ByteBlasterMV 下
载电缆,或者在 JTAG 配置期间的 EthernetBlaster 通信电缆下载数据到器件上。利用
电缆配置器件与在系统编程器件相类似。图 8-23 和图 8-24 显示了一个单一的
Cyclone IV 器件的 JTAG 配置。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–47
对于器件使用 2.5、3.0 和 3.3 V 的 VCCIO,请参考图 8-23。所有 I/O 输入必须保持最
高 4.1 V 的 AC 电压,因为 JTAG 管脚不具有内部 PCI 钳位二极管,以防止使用 2.5、
3.0 和 3.3 V 的 VCCIO 时的电压过冲。您必须利用 VCCA 上 2.5- V 的电源上电下载电缆的
VCC。对于器件使用 1.2、1.5 和 1.8 V 的 VCCIO,请参考图 8-24。您可以利用 VCCIO 的电
源上电下载电缆的 VCC。
图 8-23. 使用下载电缆 (2.5、3.0 和 3.3- V 的 VCCIO 供电 JTAG 管脚)的单器件的 JTAG 配
置
VCCA
(7)
VCCIO (1)
VCCIO (1)
VCCA
10 kΩ
10 kΩ
GND
N.C. (5)
(2)
(2)
(2)
(2)
Cyclone IV Device
nCE (4)
TCK
TDO
nCEO
nSTATUS
CONF_DONE
nCONFIG
MSEL[ ]
DATA[0]
DCLK
(7)
Download Cable 10-Pin Male
Header (Top View)
TMS
TDI
Pin 1
VCCA (6)
GND
VIO (3)
1 kΩ
GND
GND
图 8-23 注释:
(1) 将这些上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 连接 nCONFIG 和 MSEL 管脚以支持一个非 JTAG 配置方案。如果您只使用 JTAG 配置,连接 nCONFIG 管脚
至逻辑高 (logic- high)和 MSEL 管脚至 GND。此外,拉 DCLK 和 DATA[0] 至高或低,只要适合您的板
级。
(3) 管脚 6 插头对于 MasterBlaster 的输出驱动是一个 VIO 参考电压。VIO 必须与器件 VCCA 相匹配。对于这个
值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。当使用 USB-Blaster、
ByteBlaster II、ByteBlaster MV 和 EthernetBlaster 电缆时,这个管脚是不连接的。
(4) nCE 管脚必须连接到 GND 或驱动低电平以实现成功的 JTAG 配置。
(5) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(6) 利用 VCCA 上 2.5-V 的供电上电 EthernetBlaster、ByteBlaster II、USB-Blaster 或 ByteBlasterMV 电
缆的 VCC。第三方编程员必须切换到 2.5 V。管脚 4 插头是 MasterBlaster 电缆的一个 VCC 供电电源。
MasterBlaster 电缆可以接收电路板上 5.0- 或 3.3- V 的电源,DC 供电电源或者 USB 电缆上的 5.0 V 电
源。对于这个值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。
(7) 电阻值可以从 1 kΩ 到 10 kΩ 不等。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–48
图 8-24. 使用下载电缆 (1.5-V 或 1.8-V 的 VCCIO 供电 JTAG 管脚)的单器件的 JTAG 配置
VCCIO
(7)
VCCIO (1)
VCCIO (1)
VCCIO
10 kΩ
10 kΩ
GND
N.C. (5)
(2)
(2)
(2)
(2)
Cyclone IV Device
nCE (4)
TCK
TDO
nCEO
nSTATUS
CONF_DONE
nCONFIG
MSEL[ ]
DATA[0]
DCLK
(7)
Download Cable 10-Pin Male
Header (Top View)
TMS
TDI
Pin 1
VCCIO (6)
GND
VIO (3)
1 kΩ
GND
GND
图 8-24 注释:
(1) 将这些上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 连接 nCONFIG 和 MSEL 管脚以支持一个非 JTAG 配置方案。如果您只使用 JTAG 配置,连接 nCONFIG 管脚
至逻辑高 (logic- high)和 MSEL 管脚至 GND。此外,拉 DCLK 和 DATA[0] 至高或低,只要适合您的板
级。
(3) 在 USB-Blaster 和 ByteBlaster II 电缆中,此管脚连接到 nCE,仅当它用于 AS 编程时,否则,它是不
相连接的。
(4) nCE 管脚必须连接到 GND 或驱动低电平以实现成功的 JTAG 配置。
(5) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(6) 利用 VCCIO 上的供电上电 EthernetBlaster、ByteBlaster II 或 USB-Blaster 电缆的 VCC。
Ethernet- Blaster、ByteBlaster II 和 USB- Blaster 电缆不支持 1.2 V 的目标供电电压。对于目标供电
电压,请参阅 ByteBlaster II Download Cable User Guide, USB- Blaster Download Cable User
Guide,和 EthernetBlaster Communications Cable User Guide。
(7) 电阻值可以从 1 kΩ 到 10 kΩ 不等。
要在一个 JTAG 链中配置一个单器件,编程软件将所有其它的器件放在旁路模式下。在
旁路模式下,器件通过一个单旁路寄存器从 TDI 管脚传递编程数据至 TDO 管脚,而不被
此影响内部。这项方案启用编程软件以编程或校验目标器件。驱动到器件的配置数据
一个时钟周期后出现在 TDO 管脚上。
Quartus II 软件在完成配置后验证成功的 JTAG 配置。在配置结束后,软件通过 JTAG
端口检查 CONF_DONE 的状态。当 Quartus II 为一个多器件链生成一个 .jam 文件时,
它包含的指令使链上所有的器件同时被初始化。如果 CONF_DONE 不高,那么 Quartus
II 软件表明配置是失败的。如果 CONF_DONE 是高的,软件表明配置是成功的。在使用
JTAG TDI 端口连续发送配置比特流之后, TCK 端口计入一个额外的时钟周期以执行器
件的初始化。
您可以在 Cyclone IV 器件配置之前,期间和之后执行 JTAG 测试。Cyclone IV 器件在
配置期间支持 BYPASS、 IDCODE 和 SAMPLE 指令,而无需打断配置。所有其它的 JTAG
指令只能由第一个中继配置和重编程 I/O 管脚利用 ACTIVE_DISENGAGE 和 CONFIG_IO 的
指令发出。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–49
CONFIG_IO指令允许您通过JTAG端口配置I/O缓冲器以及在发出ACTIVE_DISENGAGE指令
后中断配置。这一指令允许您在配置 Cyclone IV 器件之前或等待配置器件完成配置时
执行板级测试。在发出 CONFIG_IO 指令之前,您必须发出 ACTIVE_DISENGAGE 指令。这
是因为在 Cyclone IV 器件中, CONFIG_IO 指令没有保持 nSTATUS 低电平直到重配置,
因此当活动配置被中断时,您必须脱离活动配置模式控制器。 ACTIVE_DISENGAGE 指令
在 JTAG 编程之前,置位活动配置模式控制器于空闲状态下。此外, ACTIVE_ENGAGE 指
令允许您重新接入一个脱离的活动配置模式控制器。
1
当在 Cyclone IV 器件中操作 ACTIVE_DISENGAGE、CONFIG_IO和ACTIVE_ENGAGE的 JTAG 配
置时,您必须按照特定的流程。
全芯片复位 (DEV_CLRn)和全芯片输出使能 (DEV_OE)管脚在 Cyclone IV 器件不影
响 JTAG 边界扫描或编程操作。触发这些管脚不会影响 JTAG 操作 (除了通常的边界扫
描操作)。
当为 Cyclone IV 器件的 JTAG 配置设计一个电路板时,考虑专用的配置管脚。表 8-14
介绍了您如何在 JTAG 配置期间必须连接这些管脚。
表 8-14. JTAG 配置期间的专用配置管脚连接
信号
说明
nCE
在链上所有的 Cyclone IV 器件, nCE 必须驱动至低电平,通过它连接到 GND,通过一个电阻将其拉低,或经
由一些控制电路驱动它。对同在多器件 AS、AP、PS 或 FPP 的配置链中的器件,您必须将 nCE 管脚连接到 JTAG
配置期间或与配置链具有相同顺序的 JTAG 配置的 GND 中。
nCEO
在链上所有的 Cyclone IV 器件,悬空 nCE 或连接到下一个器件的 nCE。
MSEL
这些管脚必须不能被悬空。这些管脚支持任何一个您在产品中使用的非 JTAG 配置。如果您仅使用 JTAG 配置,
将这些管脚连接到 GND。
nCONFIG
通过连接到管脚所在的 bank 上的 VCCIO 电源驱动高电平并且通过一个电阻器或由一些控制电路驱动高电平拉高
电平。
nSTATUS
通过一个 10-kΩ 的电阻器上拉管脚所在的 bank 上的 VCCIO 电源。当在同一个 JTAG 链中配置多器件时,每个
nSTATUS 管脚必须上拉至各自的 VCCIO 电源。
CONF_DONE
通过一个 10-kΩ 的电阻器上拉管脚所在的 bank 上的 VCCIO 电源。当在同一个 JTAG 链中配置多器件时,每个
CONF_DONE 管脚必须上拉至各自管脚所在的 bank 上的 VCCIO 电源。CONF_DONE 在 JTAG 配置后变高表明配置成
功。
DCLK
不能被悬空。驱动至高或低,只要适合您的板级。
当编程 JTAG 器件链时,一个可兼容的 JTAG 插头被连接到多个器件上。JTAG 链上的器
件数量受下载电缆的驱动能力的限制。当四个或更多的器件连接在 JTAG 链时,Altera
建议利用板上缓冲器缓冲 TCK、 TDI 和 TMS 管脚。
JTAG 链器件在系统包含多器件 , 或利用 JTAG BST 电路测试您的系统时,编程是理想
的。图 8-25 和图 8-26 显示了多器件的 JTAG 配置。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–50
对于器件使用 2.5-、3.0- 和 3.3- V 的 VCCIO 电源,请参考图 8-25。所有 I/O 输入必
须保持最高 4.1 V 的 AC 电压,因为 JTAG 管脚不具内部 PCI 钳位二极管,以防止使用
22.5-、3.0- 和 3.3- V 的 VCCIO 电源时的电压过冲。您必须利用 VCCA 上 2.5- V 的 VCCA 电
源上电下载电缆的 VCC。对于器件使用 1.2、1.5 和 1.8 V 的电压,请参考图 8-26。您
可以利用 VCCIO 的电源上电下载电缆的 VCC。
图 8-25. 使用下载电缆 (2.5、3.0 和 3.3- V 的 VCCIO 供电 JTAG 管脚)的多器件的 JTAG 配置
Download Cable
10-Pin Male Header
Pin 1
VCCA
VCCIO(1)
10 kΩ Cyclone IV Device
(6)
VCCA (5) V
CCA
(6)
VIO
(3)
VCCIO (1)
(2)
(2)
(2)
(2)
(2)
nSTATUS
DATA[0]
DCLK
nCONFIG
MSEL[ ]
nCEO
nCE (4)
TDI
TMS
CONF_DONE
TDO
TCK
VCCIO (1)
VCCIO (1)
10 kΩ Cyclone IV Device
10 kΩ
(2)
(2)
(2)
(2)
(2)
nSTATUS
DATA[0]
DCLK
nCONFIG
CONF_DONE
MSEL[ ]
nCEO
nCE (4)
TDI
TMS
TDO
TCK
VCCIO (1)
VCCIO (1)
10 kΩ Cyclone IV Device
10 kΩ
(2)
(2)
(2)
(2)
(2)
nSTATUS
DATA[0]
DCLK
nCONFIG
MSEL[ ]
nCEO
nCE (4)
TDI
TMS
10 kΩ
CONF_DONE
TDO
TCK
1 kΩ
图 8-25 注释:
(1) 将这些上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 连接 nCONFIG 和 MSEL 管脚以支持一个非 JTAG 配置方案。如果您只使用 JTAG 配置,连接 nCONFIG 管脚至逻辑高 (logic- high)
和 MSEL 管脚至 GND。此外,拉 DCLK 和 DATA[0] 至高或低,只要适合您的板级。
(3) 管脚 6 插头对于 MasterBlaster 的输出驱动是一个 VIO 参考电压。VIO 必须与器件 VCCA 相匹配。对于这个值,请参阅
MasterBlaster Serial/USB Communications Cable User Guide。在 ByteBlasterMV 电缆中,这个管脚是不连接的。在 USBBlaster 和 ByteBlaster II 电缆中,此管脚连接到 nCE,仅当它用于 AS 编程时,否则,它是不相连接的。
(4) 您必须连接 nCE 管脚至 GND 或驱动低电平以实现成功的 JTAG 配置。
(5) 利用 VCCA 上 2.5-V 的供电上电 ByteBlaster II、USB-Blaster 或 ByteBlasterMV 电缆的 VCC。第三方编程员必须切换到 2.5 V。管
脚 4 插头是 MasterBlaster 电缆的一个 VCC 供电电源。MasterBlaster 电缆可以接收电路板上 5.0- 或 3.3- V 的电源,DC 供电电源
或者 USB 电缆上的 5.0 V 电源。对于这个值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。
(6) 电阻值可以从 1 kΩ 到 10 kΩ 不等。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–51
图 8-26. 使用下载电缆 (1.2、1.5 和 1.8- V 的 VCCIO 供电 JTAG 管脚)的多器件的 JTAG 配置
VCCIO
Download Cable
10-Pin Male Header
Pin 1
VCCIO (5)
VCCIO
10 kΩ
(6)
VCCIO (1)
(6)
VIO
(3)
VCCIO (1)
(2)
(2)
(2)
(2)
(2)
Cyclone IV Device
nSTATUS
DATA[0]
DCLK
nCONFIG
MSEL[ ]
nCEO
nCE (4)
TDI
TMS
10 kΩ
10 kΩ
CONF_DONE
TDO
TCK
VCCIO (1)
VCCIO (1)
(2)
(2)
(2)
(2)
(2)
Cyclone IV Device
nSTATUS
DATA[0]
DCLK
nCONFIG CONF_DONE
MSEL[ ]
nCEO
nCE (4)
TDI
TMS
TDO
TCK
VCCIO (1)
10 kΩ
10 kΩ
(2)
(2)
(2)
(2)
(2)
VCCIO (1)
Cyclone IV Device
10 kΩ
nSTATUS
DATA[0]
DCLK
nCONFIG CONF_DONE
MSEL[ ]
nCEO
nCE (4)
TDI
TMS
TDO
TCK
1 kΩ
图 8-26 注释:
(1) 将这些上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 连接 nCONFIG 和 MSEL 管脚以支持一个非 JTAG 配置方案。如果您只使用 JTAG 配置,连接 nCONFIG 管脚至逻辑高 (logic- high)
和 MSEL 管脚至 GND。此外,拉 DCLK 和 DATA[0] 至高或低,只要适合您的板级。
(3) 在 USB-Blaster 和 ByteBlaster II 电缆中,此管脚连接到 nCE,仅当它用于 AS 编程时,否则,它是不相连接的。
(4) 您必须连接 nCE 管脚至 GND 或驱动低电平以实现成功的 JTAG 配置。
(5) 利用 VCCIO 上的供电上电 ByteBlaster II 或 USB-Blaster 电缆的 VCC。ByteBlaster II 和 USB-Blaster 电缆不支持 1.2 V 的目标
供电电压。对于目标供电电压值,请参阅 ByteBlaster II Download Cable User Guide 和 USB- Blaster Download Cable User
Guide。
(6) 电阻值可以从 1 kΩ 到 10 kΩ 不等。
1
如果一个非Cyclone IV器件在JTAG链中级联,非Cyclone IV器件的TDO进入Cyclone IV
器件的 TDI 必须符合第 8-5 页公式 8-1 所概述的最大过冲方程。
CONF_DONE和nSTATUS在多器件 AP、PS和 FPP 配置链中共享信号,以确保器件在完成配置
后同时进入用户模式。当 CONF_DONE 和 nSTATUS 在所有器件中共享信号时,在执行
JTAG 配置时您必须配置每个器件。
如果您只是使用 JTAG 配置,Altera 建议您连接电路,如图 8-25 或图 8-26 所示,隔
离每个 CONF_DONE 和 nSTATUS 信号,以便器件可以各自进入用户模式。
在多器件配置链中完成第一个器件配置后,其 nCEO 管脚驱动至低电平以激活第二个器
件中的 nCE 管脚,提示第二个器件开始进行配置。因此,如果这些器件也在 JTAG 链
中,确保 nCE 管脚在 JTAG 配置期间连接到 GND,或器件与配置链一样被相同顺序地
JTAG 配置。只要器件与多器件配置链一样被相同顺序地 JTAG 配置,之前器件在成功的
JTAG 配置之后其 nCEO 驱动下一个器件的 nCE 管脚至低电平。您可以在同一个 JTAG 链
中放置另一个支持 JTAG 器件编程配置的 Altera 器件。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–52
1
JTAG 配置允许在一条 JTAG 链中级联无限数量的 Cyclone IV 器件。
f 要了解关于在相同配置链中配置多个 Altera 器件的详细信息,请参阅配置手册第 2 卷中
的 Configuring Mixed Altera FPGA Chains 章节。
图 8-27 显示了利用 Cyclone IV 器件和微处理器的 JTAG 配置。
图 8-27. 使用一台微处理器的单器件的 JTAG 配置
Cyclone IV Device
Memory
nCE(3)
ADDR
DATA
N.C.
(2)
(2)
(2)
Microprocessor
nCEO
nCONFIG
DATA[0]
DCLK
TDI (4)
TCK (4)
TMS (4)
MSEL[ ]
(2)
VCCIO (1)
VCCIO (1)
10 kΩ
10 kΩ
TDO
nSTATUS
CONF_DONE
图 8-27 注释:
(1) 您必须将上拉电阻连接到电源,对其链上的所有器件提供一个可接受的输入信号。
(2) 连接 nCONFIG 和 MSEL 管脚以支持一个非 JTAG 配置方案。如果您只使用 JTAG 配置,连接 nCONFIG 管脚
至逻辑高 (logic- high)和 MSEL 管脚至 GND。此外,拉 DCLK 和 DATA[0] 至高或低,只要适合您的板
级。
(3) 您必须连接 nCE 管脚至 GND 或驱动低电平以实现成功的 JTAG 配置。
(4) 所有 I/O 输入必须保持 4.1 V 的最大 AC 电压。信号进入 TDI、 TMS 和 TCK 必须符合最大过冲方程概括于
第 8-5 页公式 8-1。
利用 Jam STAPL 配置 Cyclone IV
Jam ™ STAPL,JEDEC 标准 JESD-71,是一种用于在系统编程 (ISP)的标准文件格式。
Jam STAPL 使用 IEEE 1149.1 JTAG 接口,支持可编程器件的编程或配置和电子系统的
测试。Jam STAPL 是一种免费授权的开放标准。Jam Player 提供了一个操纵 IEEE Std.
1149.1 JTAG TAP 状态机的接口。
f 要了解关于 JTAG 和在嵌入式环境中的 Jam STAPL 的详细信息,请参阅 AN 425: Using
Command-Line Jam STAPL Solution for Device Programming。要下载 Jam Player,
请访问 Altera 网站 (www.altera.com)。
利用 JRunner 软件驱动配置 Cyclone IV 器件
JRunner 软件驱动允许您在 JTAG 模式中通过 ByteBlaster II 或 ByteBlasterMV 电缆配
置 Cyclone IV 器件。所支持的编程输入文件为 .rbf 格式。JRunner 软件驱动也需要一
个由 Quartus II 软件生成的链描述文件 (.cdf)。JRunner 软件驱动主要针对嵌入式
JTAG 配置。源代码为 Windows NT 操作系统 (OS) 而开发。您可以定制代码,使其运行
在您的嵌入式平台上。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
1
8–53
用于 JRunner 软件驱动的 .rbf 文件不能为压缩的 .rbf 文件,因为 JRunner 软件驱动使用
基于 JTAG 的配置。在基于 JTAG 配置期间,实时解压缩功能不可用。
f 要了解关于 JRunner 软件驱动的详细信息,请参阅 AN 414: JRunner Software Driver:
An Embedded Solution for PLD JTAG Configuration 和 Altera 网站上
(www.altera.com)的源文件。
结合 JTAG 和 AS 的配置方案
您可以结合 AS 配置方案与基于 JTAG 的配置 (图 8-28)。这一设置在板上使用两个 10
管脚的下载电缆插头。其中一条下载电缆用于 JTAG 模式,通过 JTAG 接口直接配置
Cyclone IV 器件。另一条下载电缆用于 AS 模式,通过 AS 编程接口在系统编程串行配
置器件。如果您尝试同时使用这两个方案配置器件,那么 JTAG 配置优先,而 AS 配置
终止。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–54
图 8-28. 结合 JTAG 和 AS 的配置方案
VCCIO (1) VCCIO(1) VCCIO (1)
10 kΩ
10 kΩ
Serial 10kΩ
Configuration
Device
GND
10 kΩ
Cyclone IV Device
VCCA
nSTATUS
CONF_DONE nCEO N.C.
(8)
nCONFIG
(9)
nCE
CLKUSR
VCCA
3.3 V
3.3 V
(4)
MSEL[ ]
3.3 V
3.3 V
(8)
(6)
DATA
DATA[0]
TCK
DCLK
DCLK
TDO
nCS
nCSO (7)
TMS
ASDI
ASDO (7)
TDI
Pin 1
Download Cable
(JTAG Mode)
10-Pin Male Header
(top view)
Pin 1
VCCA (5)
VIO (3)
3.3 V (2)
1 kΩ
10 pf
GND
10 pf
10 pf
Download Cable
(AS Mode)
10-Pin Male Header
GND
GND
10 pf
(6)
GND
GND
图 8-28 注释:
(1) 将这些上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) 利用 3.3-V 的供电上电 EthernetBlaster、ByteBlaster II 或 USB-Blaster 电缆的 VCC。
(3) 管脚 6 插头对于 MasterBlaster 的输出驱动是一个 VIO 参考电压。VIO 必须与器件 VCCA 相匹配。对于这个
值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。当使用 ByteBlasterMV 下
载电缆时,这个管脚是不连接的。当使用 USB- Blaster 和 ByteBlaster II 电缆时,此管脚连接到 nCE,
仅当它用于 AS 编程时,否则它是不相连接的。
(4) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚于 AS 配置方案,请
参考第 8-8 页表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。直接连接 MSEL 管脚到 VCCA 或 GND。
(5) 利用 VCCA 上 2.5-V 的供电上电 EthernetBlaster、ByteBlaster II、USB-Blaster 或 ByteBlasterMV 电
缆的 VCC。第三方编程员必须切换到 2.5 V。管脚 4 插头是 MasterBlaster 电缆的一个 VCC 供电电源。
MasterBlaster 电缆可以接收电路板上 5.0- 或 3.3- V 的电源,DC 供电电源或者 USB 电缆上的 5.0 V 电
源。对于这个值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。
(6) 您必须将二极管和电容尽可能地放置在接近 Cyclone IV 器件的地方。Altera 建议使用 Schottky 二极
管,它具有比切换和 Zener 二极管相对较低的正向二极管 (VF),用于有效的钳位电压。
(7) 这些管脚为复用 I/O 管脚。 nCSO 管脚在 AP 模式中作为 FLASH_nCE 管脚的功能。 ASDO 管脚在 AP 和 FPP
模式中作为 DATA[1] 管脚的功能。
(8) 电阻值可以从 1 kΩ 到 10 kΩ 不等。
(9) 仅在 Cyclone IV GX 器件具有一个选项以选择 CLKUSR (最高在 40 MHz)作为 DCLK 的外部时钟源。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–55
利用 JTAG 接口在系统编程串行配置器件
Cyclone IV 器件在单器件或多器件链中支持通过 SFL 设计利用 JTAG 接口在系统编程串
行配置器件。智能主机或板上下载电缆可以使用 Cyclone IV 器件上的四个 JTAG 管脚,
在系统编程串行配置器件,即使主机或下载电缆不能进入到配置管脚 (DCLK、 DATA、
ASDI 和 nCS 管脚)。
SFL 设计是 Altera 串行配置器件的一种基于 JTAG 的在系统编程解决方案。SFL 是
Cyclone IV 器件的桥梁设计,使用它们的 JTAG 接口进入 EPCS JTAG 间接配置器件编程
(.jic)文件,而后使用 AS 接口以编程 EPCS 器件。JTAG 接口和 AS 接口桥接在 SFL 设
计内。
在多器件链中,您必须只配置控制串行配置器件的主器件。由串行配置器件配置的多
器件链中的从器件,在使用这项功能时不必被配置。要成功使用这项功能,设置主器
件中的 MSEL 管脚,选择 AS 配置方案 (第 8-8 页表 8-3、第 8-8 页表 8-4 和第 8-9 页
表 8-5)。通过 Cyclone IV 器件的 JTAG 接口的串行配置器件在系统编程有三个阶段,
在接下来的部分进行介绍:
■
“ 载入 SFL 设计 ”
■
“ 配置器件的 ISP” 第 8-56 页
■
“ 重配置 ” 第 8-57 页
载入 SFL 设计
SFL 设计是 Cyclone IV 器件内部的一个设计,其利用胶合逻辑桥接 JTAG 接口和 AS 接
口。
智能主机使用 JTAG 接口,利用一个 SFL 设计配置主器件。SFL 设计允许主器件通过
JTAG 接口控制对四个串行配置器件管脚的访问,也称为主动串行内存接口 (ASMI)管
脚。ASMI 管脚是串行时钟输入 (DCLK)、串行数据输出 (DATA)、AS 数据输入
(ASDI)和低电平有效芯片选择 (nCS)管脚。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–56
如果您利用一个 SFL 设计配置主器件,即使从器件在多器件链中没有被配置,主器件
也进入用户模式。利用一个 SFL 设计主器件进入用户模式,即使 CONF_DONE 信号被链
中的另一个从器件外部拉低。图 8-29 显示了利用 SFL 设计的单 Cyclone IV 器件的
JTAG 配置。
图 8-29. 使用 JTAG 接口在系统编程串行配置器件
VCCA
(9)
VCCIO (1)
VCCIO (1)
VCCA
10 kΩ
(9)
Cyclone IV Device
Serial Configuration
VCCIO (1)
Device
10 kΩ
10 kΩ
DATA
DCLK
nCS
ASDI
25 Ω (7)
nCE (4)
GND
N.C. (5)
(2)
TCK
TDO
nCEO
nSTATUS
CONF_DONE
nCONFIG
MSEL[ ]
DATA[0]
DCLK
nCSO (8)
ASDO (8)
Download Cable 10-Pin Male
Header (Top View)
TMS
TDI
Serial
Flash
Loader
Pin 1
VCCA (6)
GND
VIO (3)
CLKUSR
(10)
1 kΩ
GND
GND
图 8-29 注释:
(1) 将上拉电阻连接到管脚所在的 bank 上的 VCCIO 电源。
(2) MSEL 管脚设置针对不同的配置电压标准和 POR 时间而有所不同。要连接 MSEL 管脚于 AS 配置方案,请
参考第 8-8 页表 8-3、第 8-8 页表 8-4 和第 8-9 页表 8-5。直接连接 MSEL 管脚到 VCCA 或 GND。
(3) 管脚 6 插头对于 MasterBlaster 的输出驱动是一个 VIO 参考电压。VIO 必须与器件 VCCA 相匹配。对于这个
值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。当使用 ByteBlasterMV 下
载电缆时,这个管脚是不连接的。当使用 USB-Blaster、ByteBlaster II 和 EthernetBlaster 电缆时,
此管脚连接到 nCE,仅当它用于 AS 编程时,否则它是不相连接的。
(4) 您必须连接 nCE 管脚至 GND 或驱动低电平以实现成功的 JTAG 配置。
(5) 悬空 nCEO 管脚或者将其作为用户 I/O 管脚,在它不能为其它器件提供 nCE 管脚的情况下。
(6) 利用 VCCA 上 2.5-V 的供电上电 EthernetBlaster、ByteBlaster II、USB-Blaster 或 ByteBlasterMV 电
缆的 VCC。第三方编程员必须切换到 2.5 V。管脚 4 插头是 MasterBlaster 电缆的一个 VCC 供电电源。
MasterBlaster 电缆可以接收电路板上 5.0- 或 3.3- V 的电源,DC 供电电源或者 USB 电缆上的 5.0 V 电
源。对于这个值,请参阅 MasterBlaster Serial/USB Communications Cable User Guide。
(7) 将串行电阻器连接到串行配置器件的近端。
(8) 这些管脚为复用 I/O 管脚。 nCSO 管脚在 AP 模式中作为 FLASH_nCE 管脚的功能。 ASDO 管脚在 AP 和 FPP
模式中作为 DATA[1] 管脚的功能。
(9) 电阻值可以从 1 kΩ 到 10 kΩ 不等。
(10)仅在 Cyclone IV GX 器件具有一个选项以选择 CLKUSR (最高在 40 MHz)作为 DCLK 的外部时钟源。
配置器件的 ISP
在第二个阶段,主器件的 SFL 设计允许您利用 Cyclone IV 器件的 JTAG 接口为器件链
写入配置数据到串行配置器件上。JTAG 接口为串行配置器件先发送编程数据到
Cyclone IV 器件。然后 Cyclone IV 器件使用 ASMI 管脚将数据发送到串行配置器件
上。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–57
重配置
在成功写入配置数据到串行配置器件后,Cyclone IV 器件不会自动开始重配置。智能
主机发出 PULSE_NCONFIG JTAG 指令以初始化重配置过程。在重配置期间,主器件复
位,SFL 设计不再存在于 Cyclone IV 器件,并且串行配置器件利用用户设计配置链上
所有的器件。
f 要了解关于 SFL 的详细信息,请参阅 AN 370: Using the Serial FlashLoader with
Quartus II Software。
JTAG 指令
f 要了解关于 JTAG 二进制操作指令的详细信息,请参阅 JTAG Boundary-Scan Testing
for Cyclone IV Devices 章节。
I/O 重配置
使用 CONFIG_IO 指令对 I/O 配置移位寄存器 (IOCSR)链进行重配置。这一指令允许
您在配置 Cyclone IV 器件之前或等待配置器件完成配置时执行板级测试。在配置被中
断和 JTAG 测试完成后,您必须重配置通过 PULSE_NCONFIG JTAG 指令或脉冲 nCONFIG
管脚拉低的部分。
您可以在用户模式期间的任何时候发出 CONFIG_IO 指令。
当使用 CONFIG_IO 指令时,您必须满足以下的时间限制:
■
在 nCONFIG 管脚为低电平时不可以发出 CONFIG_IO 指令。
■
在以下任何条件之后,您必须观察最少 230 μs 的等待时间:
■
■
nCONFIG 管脚变高电平
■
发出 PULSE_NCONFIG 指令
■
发出 ACTIVE_ENGAGE 指令,在发出 CONFIG_IO 指令之前
上电后,您必须等待 230 μs,与在发出 CONFIG_IO 指令之前的高 nCONFIG 管脚(或
等待 nSTATUS 管脚变高电平)
使用 ACTIVE_DISENGAGE 指令与 CONFIG_IO 指令中断配置。表 8-15 列出了用于各种
CONFIG_IO 的指令序列的使用情形。
表 8-15. JTAG CONFIG_IO (不具有 JTAG_PROGRAM)的指令流程
(1/2) (1)
配置方案和 Cyclone IV 器件的电流状态
JTAG 指令
用户模式之前 (中断配置)
用户模式
上电
PS
FPP
AS
AP
PS
FPP
AS
AP
PS
FPP
AS
AP
ACTIVE_DISENGAGE
O
O
O
0
O
O
O
0
—
—
—
—
CONFIG_IO
R
R
R
R
R
R
R
R
NA
NA
NA
NA
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–58
表 8-15. JTAG CONFIG_IO (不具有 JTAG_PROGRAM)的指令流程
(2/2) (1)
配置方案和 Cyclone IV 器件的电流状态
JTAG 指令
用户模式之前 (中断配置)
JTAG 边界扫描指令 (无
JTAG_PROGRAM)
FPP
AS
AP
PS
FPP
AS
AP
PS
FPP
AS
AP
O
O
O
0
O
O
O
0
—
—
—
—
—
—
—
—
R (2)
A
A
A (3)
A (3)
Pulse nCONFIG pin
JTAG TAP 复位
上电
PS
ACTIVE_ENGAGE
PULSE_NCONFIG
用户模式
R
R
R
R
R
R
(2)
(2)
(2)
O
0
—
—
—
—
O
0
—
—
—
—
R
R
—
—
—
—
A
(3)
A
A
A
(3)
R
R
R
表 8-15 注释:
(1) “R” 表明指令在下一个指令之前您必须执行、“O” 表明可选的指令、“A” 表明指令必须被执行,和 “NA” 表明在
这个模式中不允许该指令。
(2) 如果您使用 ACTIVE_DISENGAGE 是需要的。
(3) 如果您使用 ACTIVE_ENGAGE,任何指令都不需要。
CONFIG_IO 指令没有保持 nSTATUS 低电平直到重配置。当主动配置被中断时,您必须通
过发出 ACTIVE_DISENGAGE 和 ACTIVE_ENGAGE 指令,脱离 AS 或 AP 配置控制器。您必须
单独发出 ACTIVE_DISENGAGE 指令或在 CONFIG_IO 指令之前,如果 JTAG_PROGRAM 指令
将被稍后发送 (表 8-16)。这使得主动配置控制器进入空闲状态。主动配置控制器在
到达用户模式后通过 JTAG 编程重新建立。(表 8-16)。
1
当执行 CONFIG_IO 指令时,所有的用户 I/O 处于三态。
如果执行中断后使用配置模式进行重配置 (而非使用 JTAG_PROGRAM),没有必要在
CONFIG_IO 之前发出 ACTIVE_DISENGAGE 指令。您可以开始重配置,通过拉低 nCONFIG 至
少 500 ns 或发出 PULSE_NCONFIG 指令。如果 ACTIVE_DISENGAGE 指令发出后而
JTAG_PROGRAM指令未能进入用户模式,您必须发出 ACTIVE_ENGAGE指令以重新激活主动
配置控制器。发出 ACTIVE_ENGAGE 信号也触发配置模式的重配置,因此,没有必要拉
低 nCONFIG 或发出 PULSE_NCONFIG 指令。
ACTIVE_DISENGAGE
ACTIVE_DISENGAGE 指令在 JTAG 编程之前置主动配置控制器(AS 和 AP)于空闲状态。置
主动控制器于空闲状态的两个目的是:
Cyclone IV 器件手册,
卷 1
■
要确保它不是在 JTAG 编程过程中试图配置器件
■
要实现控制器正确识别产生于器件到达用户模式的成功的 JTAG 编程
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–59
如果 MSEL 管脚被设置到 AS 或 AP 配置方案中,不管 Cyclone IV 器件的当前状态如何,
在 JTAG 编程之前需要 ACTIVE_DISENGAGE 指令。如果在被动配置方案 (PS 或 FPP)过
程中发出 ACTIVE_DISENGAGE 指令,它对 Cyclone IV 器件没有影响。同样,在
ACTIVE_DISENGAGE 指令之后发出 CONFIG_IO 指令,但对于正确停止配置已不再需要。
表 8-16 列出了每种配置模式需要的,推荐的和可选的指令。所需指令的顺序是一项硬
性的要求并且必须满足以确保功能的实现。
表 8-16. JTAG 编程指令流程
(1)
配置方案和 Cyclone IV 器件的当前状态
JTAG 指令
在用户模式之前 (中断配置)
用户模式
上电
PS
FPP
AS
AP
PS
FPP
AS
AP
PS
FPP
AS
AP
ACTIVE_DISENGAGE
O
O
R
R
O
O
O
R
O
O
R
R
CONFIG_IO
Rc
Rc
O
O
O
O
O
0
NA
NA
NA
NA
Other JTAG 指令
O
O
O
O
O
O
O
0
O
O
O
0
JTAG_PROGRAM
R
R
R
R
R
R
R
R
R
R
R
R
CHECK_STATUS
Rc
Rc
Rc
Rc
Rc
Rc
Rc
Rc
Rc
Rc
Rc
Rc
JTAG_STARTUP
R
R
R
R
R
R
R
R
R
R
R
R
JTAG TAP 复位 / 其它指令
R
R
R
R
R
R
R
R
R
R
R
R
表 8-16 注释:
(1) “R” 表明指令在下一个指令之前必须被执行、“O” 表明可选的指令、“Rc” 表明推荐的指令,和 “NA” 表明在这个模式中
不允许该指令。
在 AS 或 AP 配置方案中, ACTIVE_DISENGAGE 指令置主动配置控制器于空闲状态。如果
一个成功的 JTAG 编程被执行后,主动控制器在用户模式到达后通过 JTAG 编程自动重
新建立。这导致主动控制器跳变到它们各自的用户模式状态。
如果 JTAG 编程未能使得 Cyclone IV 器件进入用户模式并且重新建立主动编程,有可
用的方法来实现它:
■
在 AS 配置方案中,您可以重新建立 AS 控制器,通过将 JTAG TAP 控制器移到重置状态
或发出 ACTIVE_ENGAGE 指令。
■
在 AP 配置方案中,重新建立 AP 控制器的唯一方法是发出 ACTIVE_ENGAGE 指令。在这
种情况下,置 nCONFIG 管脚有效不会重新建立任何一个主动控制器。
ACTIVE_ENGAGE
ACTIVE_ENGAGE 指令允许您重新建立一个脱离的主动控制器。您可以在配置期间或用户
模式的任何时候发出这一指令以重新建立一个已经脱离的主动控制器,以及触发在主
动配置方案中的 Cyclone IV 器件的重配置。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–60
当器件在 PS 或 FPP 配置方案中时, ACTIVE_ENGAGE 指令用作 PULSE_NCONFIG 指令。当
发出 ACTIVE_ENGAGE 指令时, nCONFIG 管脚被禁用。
1
Altera 不建议使用 ACTIVE_ENGAGE 指令,但它为重新建立主动配置控制器 (AS 和 AP)
提供了故障安全指令。
覆盖内部振荡器
此功能允许您在主动配置方案过程中覆盖内部振荡器。AS 和 AP 配置控制器使用内部振
荡器作为时钟源。您可以通过 JTAG 指令将时钟源更改为 CLKUSR。
EN_ACTIVE_CLK 和 DIS_ACTIVE_CLK JTAG 指令不论打开或关闭,主动时钟都源自 CLKUSR
管脚或内部配置振荡器。要从 CLKUSR 管脚发源主动时钟,发出 EN_ACTIVE_CLK 指令。
这导致 CLKUSR 管脚成为主动时钟源。当使用 EN_ACTIVE_CLK 指令时,您必须启用内部
振荡器以发生时钟的改变。默认的情况,配置振荡器在完成配置和初始化后被禁用以
及器件已进入用户模式。
然而,内部振荡器在以下任何条件下被启用于用户模式中:
1
■
重配置事件 (例如,驱动 nCONFIG 管脚变为低电平)
■
启用远程更新
■
启用错误检测
当使用 EN_ACTIVE_CLK 和 DIS_ACTIVE_CLK JTAG 指令以覆盖内部振荡器时,您必须两倍
计入 CLKUSR 管脚乘以预期的 DCLK 频率。 CLKUSR 管脚允许的最大频率为 80 MHz
(40 MHz DCLK)。
通常情况下,一个测试指令,在其希望驱动自身的时钟以控制 AS 状态机时,使用
CLKUSR 管脚。
要恢复时钟源至配置振荡器,发出 DIS_ACTIVE_CLK 指令。在您发出 DIS_ACTIVE_CLK
指令后,您必须继续计入 10 个时钟周期的 CLKUSR 管脚。否则,即使触发 nCONFIG 管
脚也不会恢复时钟源和不会发生重配置。一个 POR 恢复时钟源至配置振荡器。触发
nCONFIG 管脚或驱动 JTAG 状态机以复位没有恢复的时钟源的状态。
EN_ACTIVE_CLK
EN_ACTIVE_CLK 指令促使 CLKUSR 管脚信号,替代内部振荡器作为时钟源。当使用
EN_ACTIVE_CLK 指令时,您必须启用内部振荡器以发生时钟的改变。在发出该指令后,
其它的 JTAG 指令在 CLKUSR 管脚信号保持为时钟源时可以发出。时钟源仅通过发出
DIS_ACTIVE_CLK 指令或 POR 才恢复到内部振荡器。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–61
DIS_ACTIVE_CLK
DIS_ACTIVE_CLK指令打断了CLKUSR由EN_ACTIVE_CLK指令设置的启用锁存器,并且导致
时钟源恢复到内部振荡器。在发出 DIS_ACTIVE_CLK 指令后,您必须继续对 CLKUSR 管
脚提供 10 个时钟周期的时钟。
更改 AP 闪存的启动地址
在 AP 配置方案中 (仅对 Cyclone IV E 器件),您可以使用 APFC_BOOT_ADDR JTAG 指
令更改并行闪存中的默认配置的启动地址至任何所需的地址。
APFC_BOOT_ADDR
APFC_BOOT_ADDR 指令仅对 Cyclone IV E 器件有效,并且允许您在 AP 配置方案中为并行
闪存定义一个启动地址。
此指令为 AP 闪存移入启动地址。当这个指令成为主动指令时, TDI 和 TDO 管脚通过一
个 22 位的主动启动地址移位寄存器连接。移入启动地址位载入到 22 位 AP 启动地址更
新寄存器,注入 AP 控制器。AP 启动地址更新寄存器的内容可以被采用并从 TDO 移出主
动启动地址移位寄存器。
启动地址移位寄存器和更新寄存器中的启动地址被移到右边 (在 LSB 方向)的两个
位,与预期的启动地址对抗。这样做的原因是,两个 LSB 的地址是不可被访问的。当
这个启动地址进入 AP 控制器时,两个 0 被附到末端作为 LSB,从而推动移入启动地址
到左边的两个位,成为 AP 控制器获取的实际 AP 启动地址。
如果您已经启用远程更新功能, APFC_BOOT_ADDR 指令仅设置工厂配置的启动地址。
1
当系统板级仍然上电的时候, APFC_BOOT_ADDR 指令在完成重配置后被保留。然而,每
当您重启系统板级时,您必须重新编程指令。
器件配置管脚
表 8-17 至表 8-20 介绍了 Cyclone IV 器件的所有配置相关管脚的连接和功能。表 817 和表 8-18 分别列出了 Cyclone IV GX 和 Cyclone IV E 器件的管脚配置。
表 8-17. Cyclone IV GX 器件配置管脚一览
Bank
说明
(1/2)
输入 / 输出
专用
供电支持
配置模式
8
Data[4:2]
输入
—
VCCIO
FPP
3
Data[7:5]
输入
—
VCCIO
FPP
9
nCSO (2)
输出
—
VCCIO
AS
3
CRC_ERROR
输出
—
VCCIO/ 上拉 (1)
可选的,所有模式
9
DATA[0] (2)
输入
是
VCCIO
PS, FPP, AS
9
DATA[1]/ASDO (2)
VCCIO
FPP
VCCIO
AS
3
INIT_DONE
上拉
可选的,所有模式
输入
输出
输出
—
—
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–62
表 8-17. Cyclone IV GX 器件配置管脚一览
Bank
说明
(2/2)
输入 / 输出
专用
供电支持
配置模式
3
nSTATUS
双向
是
上拉
所有模式
9
nCE
输入
是
VCCIO
所有模式
9
DCLK (2)
VCCIO
PS, FPP
VCCIO
AS
3
CONF_DONE
双向
是
上拉
所有模式
9
TDI
输入
是
VCCIO
JTAG
9
TMS
输入
是
VCCIO
JTAG
9
TCK
输入
是
VCCIO
JTAG
9
nCONFIG
输入
是
VCCIO
所有模式
8
CLKUSR
输入
—
VCCIO
可选的
3
nCEO
输出
—
VCCIO
可选的,所有模式
3
MSEL
输入
是
VCCINT
所有模式
9
TDO
输出
是
VCCIO
JTAG
6
DEV_OE
输入
—
VCCIO
可选的
6
DEV_CLRn
输入
—
VCCIO
可选的
输入
输出
是
表 8-17 注释:
(1) CRC_ERROR 管脚默认为专用输出管脚。或者,您可以启用 Device and Pin Options 对话框中的 CRC Error Detection 标签上的
CRC_ERROR 管脚作为开漏输出管脚。
(2) 要在 AS 配置方案中三态 AS 配置管脚,从 Device and Pin Options 对话框中,打开 Enable input tri-state on active
configuration pins in user mode 选项。三态 DCLK、 nCSO、 Data[0] 和 Data[1]/ASDO 管脚。这些管脚的两用管脚设置将被忽
略。要设置这些管脚到不同的设定中,关闭 Enable input tri-state on active configuration pins in user mode 选项并且
从两用管脚设置菜单中设置所需的设定。
表 8-18. Cyclone IV E 器件配置管脚一览
Bank
说明
(1/2)
输入 / 输出
专用
供电支持
配置模式
1
nCSO (1)
FLASH_nCE (2)
输出
—
VCCIO
AS, AP
6
CRC_ERROR (3)
输出
—
VCCIO/ 上电 (4)
可选的,所有模式
1
DATA[0] (1), (2)
VCCIO
PS, FPP, AS
VCCIO
AP
VCCIO
FPP
VCCIO
AS
VCCIO
AP
输入
双向
是
输入
1
DATA[1] (2) /ASDO (1)
输出
—
双向
输入
VCCIO
FPP
VCCIO
AP
—
VCCIO
AP
输出
—
上电
可选的,所有模式
nSTATUS
双向
是
上电
所有模式
1
nCE
输入
是
VCCIO
所有模式
1
DCLK (1), (2)
VCCIO
PS, FPP
VCCIO
AS, AP
8
DATA[7..2] (2)
8
DATA[15..8] (2)
双向
6
INIT_DONE
1
Cyclone IV 器件手册,
卷 1
双向
输入
输出
—
是
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
表 8-18. Cyclone IV E 器件配置管脚一览
Bank
说明
8–63
(2/2)
输入 / 输出
专用
供电支持
配置模式
6
CONF_DONE
双向
是
上电
所有模式
1
TDI
输入
是
VCCIO
JTAG
1
TMS
输入
是
VCCIO
JTAG
1
TCK
输入
是
VCCIO
JTAG
1
nCONFIG
输入
是
VCCIO
所有模式
6
CLKUSR
输入
—
VCCIO
可选的
6
nCEO
输出
—
VCCIO
可选的,所有模式
6
MSEL[]
输入
是
VCCINT
所有模式
1
TDO
输出
是
VCCIO
JTAG
7
PADD[14..0]
输出
—
VCCIO
AP
8
PADD[19..15]
输出
—
VCCIO
AP
6
PADD[23..20]
输出
—
VCCIO
AP
1
nRESET
输出
—
VCCIO
AP
6
nAVD
输出
—
VCCIO
AP
6
nOE
输出
—
VCCIO
AP
6
nWE
输出
—
VCCIO
AP
5
DEV_OE
输入
—
VCCIO
可选的,AP
5
DEV_CLRn
输入
—
VCCIO
可选的,AP
表 8-18 注释:
(1) 要在 AS 配置方案中三态 AS 配置管脚,从 Device and Pin Options 对话框中,打开 Enable input tri-state on active
configuration pins in user mode 选项。三态 DCLK、 nCSO、 Data[0] 和 Data[1]/ASDO 管脚。这些管脚的两用管脚设置将被忽
略。要设置这些管脚到不同的设定中,关闭 Enable input tri-state on active configuration pins in user mode 选项并且
从两用管脚设置菜单中设置所需的设定。
(2) 要在 AP 配置方案中三态 AP 配置管脚,从 Device and Pin Options 对话框中,打开 Enable input tri-state on active
configuration pins in user mode 选项。三态 DCLK、 Data[0..15]、 FLASH_nCE 和其它 AP 管脚。这些管脚的两用管脚设置将被
忽略。要设置这些管脚到不同的设定中,关闭 Enable input tri-state on active configuration pins in user mode 选项并
且从两用管脚设置菜单中设置所需的设定。
(3) CRC_ERROR 管脚不可用于 1.0-V 核心电压的 Cyclone IV E 器件。
(4) 管脚默认为专用输出管脚。或者,您可以启用 Device and Pin Options 对话框中的 CRC Error Detection 标签上的 CRC_ERROR
管脚作为开漏输出管脚。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–64
表 8-19 介绍了专用的配置管脚。您必须正确地连接板级上的这些管脚以成功进行配
置。您可能不需要其中的一些管脚用于您的配置方案。
表 8-19. 在 Cyclone IV 器件上的专用配置管脚
管脚名称
MSEL
nCONFIG
(1/5)
用户模式
配置方案
管脚类型
说明
N/A
所有
输入
设置 Cyclone IV 器件配置方案的配置输入。您必须硬线连接这
些管脚至 VCCA 或 GND。 MSEL 管脚含有始终有效的 9-kΩ 内部
下拉电阻。
输入
配置控制输入。在用户期间利用外部电路下拉此管脚将导致
Cyclone IV 器件的配置数据丢失,进入复位状态,并且三态所
有的 I/O 管脚。将这些管脚返回至逻辑高水平以开始一个重配
置。
N/A
所有
Cyclone IV 器件在上电后立即驱动 nSTATUS 至低水平并且在
POR 时间后释放它。
nSTATUS
N/A
所有
■
状态输出 — 如果在配置期间出现错误,目标器件将
拉低 nSTATUS。
■
状态输入 — 如果一个外部源 (例如,另一种
Cyclone IV 器件)在配置或初始化期间驱动
nSTATUS 管脚至低电平,目标器件进入错误状态。
双向开漏
完成配置和初始化后驱动 nSTATUS 至低电平不影响所配
置的器件。如果您使用一种配置器件,驱动 nSTATUS 至低电
平将导致配置器件试图对器件进行配置,但由于器件忽略用户
模式中的 nSTATUS 跳变,器件不会进行重配置。要开始重配
置,您必须下拉 nCONFIG。
CONF_DONE
N/A
Cyclone IV 器件手册,
卷 1
所有
双向开漏
■
状态输出 —目标Cyclone IV器件在配置之前和配置
期间驱动 CONF_DONE 管脚至低电平。在准确无误的
接收所有的配置数据后,初始化周期开始,目标器
件释放 CONF_DONE。
■
状态输入 — 接收所有数据和 CONF_DONE 变高后,目
标器件初始化和进入用户模式。 CONF_DONE 管脚必
须具有 10-kΩ 外部上拉电阻以便器件进行初始化。
■
完成配置和初始化后驱动 CONF_DONE 至低电平不影响所配
置的器件。不可连接总线保持或 ADC 到 CONF_DONE 管脚。
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–65
表 8-19. 在 Cyclone IV 器件上的专用配置管脚
管脚名称
nCE
nCEO
用户模式
N/A
N/A (如果
选项打开
时)。I/O
(如果选项
关闭时)。
配置方案
所有
(2/5)
管脚类型
说明
输入
低电平有效芯片使能。 nCE 管脚利用一个低电平信号激活
Cyclone IV 器件以实现配置。您必须在配置、初始化和用户模
式下保持 nCE 管脚低电平。在一个单器件配置中,您必须保持
nCE 管脚为低电平。在一个多器件配置中, 保持第一个器件中
的 nCE 为低电平,而将 nCEO 管脚连接至链中下一个器件的
nCE 上。您必须保持 nCE 管脚为低电平以成功进行器件的 JTAG
编程。
完成配置时,输出驱动至低电平。在一个单器件配置中, 您可
以在完成配置后悬空这个管脚或作为用户 I/O 管脚使用。在一
个多器件配置中,此管脚注入下一个器件的 nCE。链中最后一
个器件的 nCEO 在完成配置后悬空或作为用户 I/O 管脚使用。
所有
输出开漏
如果您使用 nCEO 管脚注入下一个器件的 nCE 管脚,使用 10kΩ 的外部上拉电阻拉高 nCEO 管脚至 I/O bank 上的 VCCIO 电压
以帮助内部弱上拉电阻。
如果您在配置完成后使用 nCEO 管脚作为用户 I/O 管脚,在
Dual-Purpose Pin 设置上设定管脚的状态。
nCSO,
FLASH_nCE
(1)
I/O
AS, AP (2)
从 Cyclone IV 器件至 AS 模式中的串行配置器件的输出控制信
号启用配置器件。此管脚作为 AS 模式中的 nCSO 和 AP 模式中
的 FLASH_nCE。
输出
从 Cyclone IV 器件至 AP 模式中的并行闪存的输出控制信号启
用闪存。将 CE# 管脚连接在 Numonyx P30 或 P33 闪存。(2)
此管脚有一个始终有效的内部上拉电阻。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–66
表 8-19. 在 Cyclone IV 器件上的专用配置管脚
管脚名称
用户模式
配置方案
(3/5)
管脚类型
说明
在 PS 和 FPP 配置中, DCLK 是用于从外部源计入数据至目标
Cyclone IV 器件的时钟输入。数据锁存于器件的 DCLK 上升
沿。
DCLK(1)
N/A
PS, FPP,
AS, AP (2)
在 AS 模式中, DCLK 是 Cyclone IV 器件上的一个输出,为配
置接口提供时间。它有一个始终有效的内部上拉电阻(通常为
输入 (PS、 25 kΩ)。
FPP)。输出 在 AP 模式中 , DCLK 是 Cyclone IV E 器件上的一个输出,为
(AS、AP) 配置接口提供时间。(2)
(2)
Cyclone IV 器件手册,
卷 1
在 AS 或 AP 配置方案中,此管脚在完成配置后驱动进入无效状
态。另外,在主动方案中,您可以使用此管脚作为用户模式中
的用户 I/O。在 PS 或 FPP 方案中使用一台控制主机,您必须驱
动 DCLK 至高或低,取其方便而用。在被动方案中,您不可以
使用 DCLK 作为用户模式中的用户 I/O。完成配置后触发此管
脚不影响所配置的器件。
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–67
表 8-19. 在 Cyclone IV 器件上的专用配置管脚
管脚名称
用户模式
配置方案
(4/5)
管脚类型
说明
数据输入。在串行配置模式下,位宽配置数据被介绍到目标
Cyclone IV 器件的 DATA[0] 管脚上。
DATA[0](1)
I/O
PS, FPP,
AS, AP (2)
在 AS 模式中, DATA[0] 有一个始终有效的内部上拉电阻。完
输入 (PS、 成 AS 配置后, DATA[0] 是一个具可选用户控制的专用输入管
FPP、AS)。 脚。
双向(AP)
完成 PS 或 FPP 配置后, DATA[0] 作为用户 I/O 管脚有效。此
(2)
管脚的状态取决于 Dual- Purpose Pin 的设置。
完成 AP 配置后, DATA[0] 是一个具有可选用户控制的专用双
向管脚。(2)
DATA[1] 管脚在 AS 模式中作为 ASDO 管脚。数据输入在非 AS 模
式中。控制从 Cyclone IV 器件至 AS 模式中的串行配置器件的
信号用于读取配置数据。
在 AS 模式中, DATA[1] 有一个始终有效的内部上拉电阻。完
成 AS 配置后, DATA[1] 是一个具可选用户控制的专用输出管
脚。
DATA[1]/
ASDO(1)
I/O
FPP, AS, AP
(2)
输入
(FPP)。输
在 PS 配置方案中, DATA[1] 在配置过程中作为用户 I/O 管
出 (AS)。
脚,意味它处于三态。
双向 (AP)
完成 FPP 配置后, DATA[1] 作为用户 I/O 管脚有效,此管脚
(2)
的状态取决于 Dual- Purpose Pin 的设置。
在 AP 配置方案中,仅对于 Cyclone IV E 器件,字节宽和字宽
的配置数据分别被介绍于目标 Cyclone IV E 器件的
DATA[7..0] 或 DATA[15..0] 上。完成 AP 配置后,DATA[1]
是一个具有可选用户控制的专用双向管脚。(2)
在 AS 或 PS 配置方案中, DATA[7..2] 在配置过程中作为用
户 I/O 管脚,意味着它们处于三态。
DATA[7..2]
I/O
输入
完成 FPP 配置后, DATA[7..2] 作为用户 I/O 管脚有效,这
(FPP)。双 些管脚的状态取决于 Dual- Purpose Pin 的设置。
FPP, AP (2)
向 (AP) 在 AP 配置方案中,仅对 Cyclone IV E 器件,字节宽和字宽配
(2)
置数据分别被介绍于目标 Cyclone IV E 器件的 DATA[7..0]
或 DATA[15..0] 上。完成 AP 配置后, DATA[7..2] 为具有
可选用户控制的专用双向管脚。(2)
数据输入。字宽配置数据被介绍于目标 Cyclone IV E 器件的
DATA[15..0] 上。
DATA[15..8]
I/O
AP (2)
双向
在 PS、FPP 或 AS 配置方案中, DATA[15:8] 在配置过程中作
为用户 I/O 管脚,意味着它们处于三态。
完成 AP 配置后, DATA[15:8] 为具有可选用户控制的专用双
向管脚。
PADD[23..0]
I/O
AP (2)
输出
在 AP 模式,它是一个从 Cyclone IV E 器件到并行闪存的 24 位
地址总线。连接 Numonyx P30 或 P33 闪存上的 A[24:1] 总线。
nRESET
I/O
AP (2)
输出
低电平复位输出。驱动 nRESET 管脚至低电平复位并行闪存。
连接 Numonyx P30 或 p33 闪存上的 RST# 管脚。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–68
表 8-19. 在 Cyclone IV 器件上的专用配置管脚
管脚名称
(5/5)
用户模式
配置方案
管脚类型
说明
nAVD
I/O
AP (2)
输出
低电平地址有效输出。读写操作期间驱动 nAVD 管脚至低电平
表明在并行闪存上一个有效的地址被介绍于 PADD[23..0] 地
址总线上。连接 Numonyx P30 或 p33 闪存上的 ADV# 管脚。
nOE
I/O
AP (2)
输出
低电平输出使能并行闪存。在读取操作过程中,驱动 nOE 管脚
低电平使能并行闪存输出 (DATA[15..0])。 连接 Numonyx
P30 或 P33 闪存上的 OE# 管脚。
nWE
I/O
AP (2)
输出
低电平写入使能并行闪存。在写入操作过程中,驱动 nWE 管脚
至低电平表明并行闪存在 DATA[15..0] 总线上的数据是有效
的。连接 Numonyx P30 或 P33 闪存上的 WE# 管脚。
表 8-19 注释:
(1) 如果您利用 ALTASMI_PARALLEL 宏功能访问 EPCS 器件或者用户模式中您自己的用户逻辑,在 Quartus II 软件的 Device and
Pin Options 窗口的 Dual- Purpose Pins 类别中,为此管脚选择 Use as regular I/O。
(2) AP 配置方案仅对 Cyclone IV E 器件有效。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
配置
8–69
表 8-20 列出了可选的配置管脚。如果您在 Quartus II 软件中不启用这些可选的配置
管脚,它们将作为通用的用户 I/O 管脚。因此,在配置期间,这些管脚作为用户 I/O
管脚并且利用弱上拉电阻三态。
表 8-20. 可选的配置管脚
管脚名称
CLKUSR
INIT_DONE
用户模式
N/A (如果选项
打开时)。I/O
(如果选项关闭
时)。
N/A (如果选项
打开时)。I/O
(如果选项关闭
时)。
管脚类型
输入
输出开漏
说明
可选用户 - 提供时钟输入一个或多个器件的同步初始化。此管脚
通过打开 Quartus II 软件中的 Enable user-supplied start-up
clock (CLKUSR) 选项启用。
对于 Cyclone IV GX 器件的 AS 配置,您可以使用此管脚作为外部
时钟源,通过更改 Quartus II 软件在 Device and Pin Options 对
话框中的 Configuration 标签上的时钟源,生成 DCLK。
状态管脚用于表明当器件已初始化并在用户模式中。当 nCONFIG
为低电平时, INIT_DONE 管脚处于三态,并且在开始配置期间由
于 10-kΩ 外部上拉电阻而拉高。在选项启用 INIT_DONE 被编程到
器件 (在第一帧配置数据期间)后, INIT_DONE 管脚变为低电
平。当初始化完成后, INIT_DONE 管脚被释放和拉高,器件进入
用户模式。因此,监控电路必须能够检测一个由低至高的跳变。通
过打开 Quartus II 软件中的 Enable INIT_DONE output 选项启用
此管脚。
如在 Quartus II 软件中启用 Enable OCT_DONE 选项,此管脚的功
能将被改变。此选项控制 INIT_DONE 信号是否门控 OCT_DONE 信
号,这表明完成了片上匹配 (OCT)校准的上电。如果此选项是关
闭的, INIT_DONE 信号不被 OCT_DONE 信号门控。
DEV_OE
N/A 如果选项打
开时)。I/O (如
果选项关闭时)。
DEV_CLRn
N/A 如果选项打
开时)。I/O (如
果选项关闭时)。
输入
可选管脚允许您覆盖器件上的所有三态。当此管脚驱动至低电平
时,所有 I/O 管脚均为三态;当此管脚驱动至高电平时,所有 I/O
管脚均按编程工作。通过打开 Quartus II 软件中的 Enable
device-wide output enable (DEV_OE) 选项启用此管脚。
输入
可选管脚允许您覆盖所有器件寄存器的清零。当此管脚驱动至低电
平时,所有寄存器均被清零;当此管脚驱动至高电平时,所有寄存
器均按编程工作。您可以通过打开 Quartus II 软件中的 Enable
device-wide reset (DEV_CLRn) 选项启用此管脚。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–70
远程系统更新
Cyclone IV 器件支持在 AS 和 AP 配置方案中的远程系统更新。您也可以利用高级
Cyclone IV 功能实现远程系统更新,如在 AS 配置方案中进行实时解压缩配置数据。
1
在多器件的配置链中,不支持任何配置方案的远程系统更新。
功能描述
在 Cyclone IV 器件中专用的远程系统更新电路管理远程配置和提供错误检测,恢复和
状态信息。一个 Nios® II 处理器或者一个用户逻辑在 Cyclone IV 器件执行逻辑阵列提
供对远程配置数据源的访问和配置存储器的接口。
1
配置存储器参考串行配置器件 (EPCS)或支持并行闪存,取决于使用的配置方案。
Cyclone IV 器件的远程系统更新过程包括以下步骤:
1. 一台 Nios II 处理器 (或用户逻辑)在 Cyclone IV 器件的逻辑阵列执行从一个远
程位置接收新的配置数据。连接到远程资源的是一个通信协议,如传输控制协议 /
互联网协议 (TCP/IP),外设组件互联 (PCI),用户数据报协议 (UDP),通用异
步接收器 / 发送器 (UART)或一个专用接口。
2. Nios II 处理器 (或用户逻辑)将新配置数据写入到一个配置存储器中。
3. Nios II 处理器 (或用户逻辑)利用一个新的或更新的配置数据开始一个重配置周
期。
4. 专用的远程系统更新电路检测和恢复可能发生在重配置期间或之后的任何错误,并
且为用户设计提供错误状态信息。
图 8-30 显示了执行远程配置更新所需的步骤 (图 8-30 的数字对应步骤 1–3)。
图 8-30. Cyclone IV 器件远程系统更新功能框图
1
2
Development
Location
Data
Data
Cyclone IV
Device
Control Module
Configuration
Memory
Data
Device Configuration
3
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–71
图 8-31 显示了在 Cyclone IV 器件中实现远程系统更新的框图。
图 8-31. AS 和 AP 配置方案的远程系统更新框图
Serial Configuration Device
Parallel Flash Memory
Cyclone IV Device
Nios Processor or User Logic
Serial Configuration Device
Cyclone IV E Device
Nios Processor or User Logic
Supported Parallel Flash
在远程系统更新模式中的 MSEL 管脚设置与标准配置模式相同。标准配置模式指的是不
支持远程系统更新 (禁用远程系统更新电路)的普通 Cyclone IV 器件的配置模式。当
在 Cyclone IV 器件中使用远程系统更新时,您必须启用 Quartus II 软件中的远程更
新模式的选项设置。
启用远程更新
您可以在设计编译 (在 Compiler Settings 菜单中)之前,启用或禁用 Quartus II 软
件中的 Cyclone IV 器件的远程更新。要在工程的编译器设置中 (compiler settings
of the project)启用远程更新 , 请执行以下步骤:
1. 在 Assignments 菜单中,单击 Device。出现 Settings 对话框。
2. 单击 Device and Pin Options。出现 Device and Pin Options 对话框。
3. 单击 Configuration 标签。
4. 在 Configuration Mode 列表中,选择 Remote。
5. 点击 OK。
6. 在 Settings 对话框 , 点击 OK。
配置镜像类型
当使用远程系统更新时,Cyclone IV 器件配置的比特流归类为出厂配置镜像或应用配
置镜像。镜像,也称为配置,是一个加载到器件执行某些用户定义功能的设计。系统
中的每个器件都需要一个出厂镜像,或另外一个或多个应用镜像。出厂镜像是一个用
户定义的候补或安全配置,负责利用专用电路管理远程更新。在目标 Cyclone IV 器件
中,应用镜像实现用户定义的功能。您可以在出厂镜像中包括默认应用镜像的功能性。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–72
远程系统更新模式
在远程更新模式中, Cyclone IV 设备在上电后加载出厂配置镜像。用户定义的出厂配
置确定要加载的应用配置并触发重配置周期。出厂配置也可以包含应用逻辑。
当与配置存储器使用时,远程更新模式允许一个应用配置以开始任何闪存扇形边界。
此外,远程更新模式推出用户监视计时器,可以检测出应用配置中的功能错误。
远程更新模式
在 AS 配置方案中,当远程更新更新中首先上电 Cyclone IV 器件后,它加载出厂配置
于地址 boot_address[23:0] = 24b'0 上。Altera 建议为您的系统存储出厂配置镜像于
启动地址 24b'0,它对应到串行配置器件的起始地址位置 0×000000。一个出厂配置镜
像是您系统 Cyclone IV 器件的比特流,它在生产过程中被编程并且作为出现错误时的
候补镜像。此镜像存储在非易失性存储器中,并且从不使用远程登录进行更新或更改。
当您在 Cyclone IV E 器件中使用 AP 配置时,Cyclone IV E 器件在远程更新模式完成
上电后,加载位于以下地址的默认出厂配置:
boot_address[23:0] = 24'h010000 = 24'b1 0000 0000 0000 0000.
您可以使用 APFC_BOOT_ADDR JTAG 指令将默认配置地址更改到任何所需的地址。出厂
配置镜像存储在非易失性的存储器中,并且从不使用远程登录进行更新或更改。这对
应到默认起始地址位置 0×010000,代表 16 位字地址 (或更新地址,如果默认地址被更
改)在所支持的并行闪存中。要了解关于 APFC_BOOT_ADDR JTAG 指令在 AP 配置方案中
的应用的详细信息,请参阅 “JTAG 指令 ” 第 8-57 页。
出厂配置镜像是用户设计的并且包含软逻辑 (Nios II 处理器或状态器和远程通信接
口)到:
Cyclone IV 器件手册,
卷 1
■
处理基于专用的远程系统更新电路的状态信息的任何错误。
■
与远程主机通信和接收新应用配置并将新配置数据存储在位于非易失性的存储器件
中。
■
确定加载到 Cyclone IV 器件的应用配置。
■
启用或禁用用户监视计时器并加载其超时值 (可选)。
■
指示专用的远程系统更新电路以开启重配置周期。
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–73
图 8-32 显示了在远程更新模式中,出厂配置和应用配置之间的跳变。
图 8-32. 远程更新模式的配置之间的跳变
配置错误
上电
设置控制寄存器
并重配置
Application 1
Con guration
重新加载一个不同的应用程序
配置错误
Factory
Con guration
重新加载一个不同的应用程序
设置控制寄存器
并重配置
Application n
Con guration
配置错误
在上电或配置错误后,出厂配置逻辑写入远程系统更新控制寄存器以指定要加载的应
用配置的地址。出厂配置也指定是否要为应用配置启用用户监视计时器,如果启用,
指定时间的设置。
1
只对为远程更新模式设计的应用配置有效,包括逻辑复位用户模式下的定时器。要了
解关于用户监视计时器的详细信息,请参阅 “ 用户监视计时器 ” 第 8-80 页。
如果在加载应用配置过程中有一个错误,远程系统更新状态寄存器由 Cyclone IV 器件
专用的远程系统更新电路写入,指定导致重配置的原因。
以下操作促使写入远程系统更新状态寄存器:
■
nSTATUS 外部驱动至低电平
■
内部循环冗余校验 (CRC)错误
■
用户监视计时器超时
■
配置复位 (逻辑阵列 nCONFIG 信号或外部 nCONFIG 管脚置位)
Cyclone IV 器件在出现错误时自动加载出厂配置。这种用户设计的出厂配置读取远程
系统更新状态寄存器,以确定重配置的原因。出厂配置采取适当的错误恢复步骤,并
写入到远程系统更新控制寄存器以确定下一个要加载的应用配置。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
8–74
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
当 Cyclone IV 器件成功加载应用配置后,它们进入用户模式。在用户模式下,软逻辑
(Nios II 处理器或状态机和远程通信接口)协助 Cyclone IV 器件确定远程系统更新
到达的时间。当远程系统更新到达时,软逻辑接收传入数据,将它写入到配置存储器
件并触发器件以加载出厂配置。出厂配置读取远程系统更新状态寄存器,确定有效的
应用配置的加载,相应地写入远程系统更新控制寄存器,并开始系统的重配置。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–75
专用的远程系统更新电路
本章节介绍了 Cyclone IV 器件远程系统更新专用电路的实现。专用的远程系统更新电
路在硬逻辑中实现。此专用电路与用户定义的出厂应用配置接口,在 Cyclone IV 器件
的逻辑阵列中实现,以提供完整的远程配置解决方案。远程系统更新电路包含远程系
统更新寄存器,一个监视计时器,以及控制这些组件的状态机。图 8-33 显示了远程系
统更新模块的数据路径。
图 8-33. 远程系统更新电路的 (1)
Status Register (SR)
Previous
State
Register 2
Bit[30..0]
Previous
State
Register 1
Bit[30..0]
Internal Oscillator/
CLKUSR
Current
State
Logic
Bit[31..0]
Control Register
Bit [38..0]
Logic
Update Register
Bit [38..0]
update
RSU
Master
State
Machine
Logic
Shift Register
din
dout
din
Bit [40..39]
dout
Bit [38..0]
RU_SHIFTnLD
RU_CAPTnUPDT
timeout User
Watchdog
Timer
capture
clkout
RU_DIN
RSU
Reconfiguration
State
Machine
capture update
Logic
clkin
RU_CLK (2) RU_DOUT
RU_nCONFIG
RU_nRSTIMER
Logic Array
图 8-33 注释:
(1) RU_DOUT、 RU_SHIFTnLD、 RU_CAPTnUPDT、 RU_CLK、 RU_DIN,RU_nCONFIG 和 RU_nRSTIMER 信号由 ALTREMOTE_UPDATE
宏功能内部控制。
(2) RU_CLK 指 ALTREMOTE_UPDATE 宏功能模块 “ 时钟 ” 输入。更多的信息,请参阅 Remote Update Circuitry (ALTREMOTE_UPDATE)
Megafunction User Guide。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–76
远程系统更新寄存器
远程系统更新模块包含了一系列用于存储配置地址,监视计时器设置和状态信息的寄
存器。表 8-21 列出了这些寄存器。
表 8-21. 远程系统更新寄存器
寄存器
说明
移位寄存
器
这个寄存器可通过逻辑阵列存取,也可以通过用户逻辑对更新寄存器、状态寄存器,和控制寄存器进行写入和采样。
对远程更新模式中的出厂配置启用写入访问以允许写入更新寄存器中。对远程更新模式中的所有应用配置禁用写入访
问。
控制寄存
器
这个寄存器包含当前的配置地址,用户监视计时器设置,一个检查早期 CONF_DONE 的选项位,和一个选择内部振荡
器作为启动状态机时钟的选项位。 在应用配置的读取操作过程中,这个寄存器由移位寄存读取。当开始一个重配置
周期时,更新寄存器的内容简介被写入到控制寄存器中。
更新寄存
器
这个寄存器包含的数据与控制寄存器的相似。然而,它只能由出厂配置通过移入数据到移位寄存器,并发出一个更新
操作来进行更新。当出厂配置触发一个重配置周期时,控制寄存器与更新寄存器的内容一起更新。在出厂配置的读取
过程中,此寄存器读取到移位寄存器中。
状态寄存
器
这个寄存器通过对每个重配置的远程系统更新电路写入以记录重配置的原因。此信息被出厂配置用于确定重配置接下
来将采取的适当行动。在采集周期过程中,此寄存器读取到移位寄存器中。
远程系统更新的控制和状态寄存器由 10- MHz 内部振荡器 (与控制用户监视计时器相同
的振荡器)或 CLKUSR 提供时钟。然而,远程系统更新的移位和更新寄存器由最大频率
为 40- MHz 的用户时钟输入 (RU_CLK)计时。 RU_CLK 没有最小频率。
远程系统更新控制寄存器
远程系统更新控制寄存器为应用配置存储应用配置的地址,用户监视计时器设置,和
选项位。在 AS 配置方案的远程更新模式中,控制寄存器地址位在上电时被设置为全零
(24'b0)以加载 AS 出厂配置。在 AP 配置方案的远程更新模式中,控制寄存器地址位
在上电时被设置为 24'h010000 (24'b1 0000 0000 0000 0000)以加载 AP 默认的出
厂配置。然而,在 AP 配置方案中,您可以使用 APFC_BOOT_ADDR JTAG 指令将默认的出
厂配置地址更改到任何所需的地址。此外,在远程更新模式中的出厂配置已写入访问
到此寄存器。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–77
图 8-34 显示了控制寄存器的位位置。表 8-22 定义了控制寄存器的位内容。在图 834 的数量显示了寄存器的位位置的一种设置。例如,位数量 35 是监视计时器的启动
位。
图 8-34. 远程系统更新控制寄存器
38
Rsv2
37
36
35
34 33
12 11
0
Cd_early Osc_int Wd_en Rsv1 Ru_address[21..0] Wd_timer[11..0]
表 8-22. 远程系统更新控制寄存器的内容
控制寄存器位
值
说明
Wd_timer[11..0]
12'b000000000000
用户监视计时器超时值 (最重要的 29 位中的 12 位数值:
{Wd_timer[11..0],17'b1000})
Ru_address[21..0]
22'b0000000000000000000000
配置地址 (重要的 24 位中的 22 位数值:
boot_address[23:0] = {Ru_address[21..0],2'b0})
Rsv1
1'b0
保留位
Wd_en
1'b1
用户监视计时器启用位
Osc_int (1)
1'b1
内部振荡器作为开启状态机时钟启用位
Cd_early (1)
1'b1
早期 CONF_DONE 检查
Rsv2
1'b1
保留位
表 8-22 注释:
(1) 应用配置的选项位。
当启用时,早期 CONF_DONE 检查 (Cd_early)选项位确保具有一个有效配置,由出厂
配置指定的启动地址和适当的大小。如果检测到一个无效的配置或 CONF_DONE 管脚被
置有效太早,器件复位并重配置出厂配置镜像。内部振荡器 (作为启动状态机的时钟
[Osc_int] 选项位)确保启动时钟的功能以消除挂启动。当打开所有的选项位时,它
们提供全面覆盖的编程和启动部分的应用配置。Altera 建议打开 Cd_early 和 Osc_int
选项位。
1
对于应用配置的 Cd_early 和 Osc_int 选项位必须由出厂配置打开。
远程系统更新状态寄存器
远程系统更新状寄存器指定重配置的触发条件。各种触发和错误条件包括:
■
在应用配置期间的循环冗余校验 (CRC)错误
■
nSTATUS 由于错误而让外部器件置位
■
Cyclone IV 器件的逻辑阵列触发重配置周期,可能是在下载一个新的应用配置镜像
之后导致的。
■
外部配置复位 (nCONFIG)置位
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–78
■
用户监视计时器超时
表 8-23 列出了状态寄存器中的当前状态逻辑的内容,当远程系统更新的主状态机在出
厂配置或应用配置中分别访问工厂信息或应用信息时。表 8-23 中的状态寄存器位列出
了 32 位逻辑中的位位置。
表 8-23. 远程系统更新状态寄存器中的当前状态逻辑的内容
远程系统更新主状态机
状态寄存器
位
工厂信息 (1)
运用信息 1 (2)
说明
31:30
主状态机当前状态
远程系统更新主状态机的当前状态
29:24
保留位
垫位全设置为 0
23:0
启动地址
当前 24 位启动地址,被配置方案用为启动地址以加载
当前配置
31:30
主状态机当前状态
远程系统更新主状态机的当前状态
29
运用信息 2 (2)
定义
用户监视计时器启用位 用户监视启用的当前状态,其为高电平
28:0
用户监视计时器超时值 当前整个 29 位监视超时值。
31:30
主状态机当前状态
远程系统更新主状态机的当前状态
29:24
保留位
垫位全设置为 0
23:0
启动地址
当前 24 位启动地址,被用为起始地址以加载当前配
置。
表 8-23 注释:
(1) 远程系统更新主状态机在出厂配置中。
(2) 远程系统更新主状态机在应用配置中。
之前的两个应用配置在之前的状态寄存器中有效 (前状态寄存器 1 和前状态寄存 2),
但仅用于调试目的。
表 8-24 列出了状态寄存器中的前状态寄存器 1 和前状态寄存器 2 的内容。表 8-24 中
的状态寄存器位显示了 3 位寄存器中的位位置。前状态寄存器 1 和前状态寄存器 2 具
有相同的位定义。前状态寄存器 1 反映当前的应用配置,而前状态寄存器 2 反映之前
的应用配置。
表 8-24. 远程系统更新前状态寄存器 1 和前状态寄存器 2 在状态寄存器中的内容
状态寄存器位
定义
30
nCONFIG 源
29
CRC 错误源
28
nSTATUS 源
27
用户监视计时器源
26
远程系统更新 nCONFIG 源
Cyclone IV 器件手册,
卷 1
(1/2)
说明
一热,高电平领域,介绍了造成 Cyclone IV 器件脱离前应用配置的重配
置源。如果有连接,更高的位顺序表示优先。例如,如果 nCONFIG 和远
程系统更新 nCONFIG 同时到达重配置状态机, nCONFIG 高于远程系统
更新 nCONFIG。
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–79
表 8-24. 远程系统更新前状态寄存器 1 和前状态寄存器 2 在状态寄存器中的内容
状态寄存器位
定义
(2/2)
说明
25:24
主状态机当前状态
主状态机在重配置期间的状态导致 Cyclone IV 器件脱离前应用配置。
23:0
启动地址
用于配置方案的地址加载前应用配置。
如果采集不当,当系统在第一次进入远程更新应用配置之前采集之前的状态,从移位
寄存器的一个输出值表明采集错误地被访问。
远程系统更新状态机
远程系统更新控制和更新寄存器有相同的定义,但服务于不同的角色 (第 8-76 页
表 8-21)。然而这两个寄存器仅可以在器件利用出厂配置镜像加载时更新,更新寄存
器的写入由用户逻辑控制,控制寄存器的写入由远程系统更新状态机控制。
在出厂配置中,用户逻辑应该为下一个应用配置发送选项位 (Cd_early 和
Osc_int),配置地址,和监视计时器设置位以更新寄存器。当逻辑阵列配置复位
(RU_nCONFIG)变高时,远程系统更新状态机更新控制寄存器,与更新寄存器的内容
并从新的应用页面中开始系统的重配置。
1
为了确保页面之间的成功重配置,置位 RU_nCONFIG 信号至少 250 ns。这相当于频闪至
少 250 ns 高的 ALTREMOTE_UPDATE 宏功能的 reconfig 输入。
如果有错误或重配置的触发条件,远程系统更新状态机指示系统,通过设置相应的控
制寄存器加载出厂或应用配置 (基于模式和错误条件)。
表 8-25 列出了控制寄存器的内容,在出现所有可能的错误或触发条件的事情后。
远程系统状态寄存器在错误条件后由专用错误监控电路更新,但在加载出厂配置之前。
表 8-25. 控制寄存器在错误和重配置触发条件后的内容
重配置错误 / 触发
在远程更新上的控制寄存器设置
nCONFIG 复位
所有位均为 0
nSTATUS 错误
所有位均为 0
CORE 触发重配置
更新寄存器
CRC 错误
所有位均为 0
Wd 超时
所有位均为 0
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
远程系统更新
8–80
用户监视计时器
用户监视计时器防止由于意外停止器件而出现的有错误的应用配置。系统使用计时器
以检测功能的错误,在应用配置成功加载到 Cyclone IV 器件上时。
用户监视计时器是一个计数器,通过出厂配置对远程系统更新控制寄存器载入的初始
值计数。计数器为 29 位宽,并有 229 的最大计数值。当指定用户监视器值时,仅指定
最高的 12 位。远程系统更新电路追加 17'b1000,为监视计时器形成 29 位值。定时器
设置的粒度为 217 周期。周期时间是基于 10- MHz 内部振荡器的频率或 CLKUSR (最高频
率为 40 MHz)。
表 8-26 列出了 10- MHz 内部振荡器的操作范围。
表 8-26. 10- MHz 内部振荡器规格
最小值
典型
最大值
单位
5
6.5
10
MHz
用户监视计时器在应用配置进入器件用户模式后开始计数。此计时器在它终止使
RU_nRSTIMER 信号有效之前,必须周期重新加载或由应用配置复位。如果应用配置没有
在计数终止之前重新加载用户监视计时器,远程系统更新专用的电路将生成一个超时
信号。超时信号将告诉远程系统更新电路在远程系统更新状态寄存器中设置用户监视
计时器的状态位 (Wd)并且通过加载出厂配置对器件进行重配置。
1
为了实现远程系统更新专用的电路对监视计时器的复位,您必须置位 RU_nRSTIMER 信号
最少 250 ns。这相当于频闪至少 250 ns 高的 ALTREMOTE_UPDATE 宏功能的
reset_timer 输入。
在配置过程中的错误由 CRC 引擎检测。功能错误不可存在于出厂配置中,因为它在生
产过程中被存储和验证,并且它从不远程更新。
1
用户计时器在出厂配置和应用配置的配置周期过程中被禁用。它在应用配置进入用户
模式后启用。
Quartus II 软件支持
实现您的设计,在 Cyclone IV 器件逻辑阵列和远程系统更新电路之间需要一个远程系
统更新接口。您还必须为生产和远程编程系统配置存储器生成配置文件。Quartus II
软件提供了这些功能。
两种实现选项,ALTREMOTE_UPDATE 宏功能和远程系统更新原子,是对于远程系统更新
电路和器件逻辑阵列接口之间的接口。使用宏功能,而不是创建您自己的逻辑,节省
设计的时间并且提供更高效的逻辑综合和器件实现。
Cyclone IV 器件手册,
卷 1
Altera 公司 2011 年 11 月
Chapter 8: Cyclone IV 器件的配置和远程系统更新
文档修订历史
8–81
f 要了解关于 ALTREMOTE_UPDATE 宏功能的详细信息,请参阅 Remote Update Circuitry
(ALTREMOTE_UPDATE) Megafunction User Guide。
文档修订历史
表 8-27 列出了本章节的文档修订历史。
表 8-27. 文档修订历史
日期
2011 年 11 月
2010 年 12 月
版本
1.4
1.3
修订内容
■
添加了关于如何获得 EPCS 管脚控制的信息。
■
更新了 “ 复位 ”、“ 单器件AS配置”、“ 单器件 AP配置 ” 和 “ 覆盖内部振
荡器 ” 章节。
■
添加了表 8-7。
■
更新了表 8-6 和表 8-19。
■
更新了图 8-3、图 8-4 和图 8-5。
■
针对 Quartus II 软件版本 10.1 的发布进行的更新。
■
添加了 Cyclone IV E 新器件封装信息。
■
更新了表 8–7、表 8–10 和表 8–11。
■
少许的文本编辑。
针对 Quartus II 软件版本 10.0 的发布进行的更新:
2010 年 7 月
■
更新了“上电复位(POR)电路 ”、“配置和 JTAG管脚的I/O要求 ”和“复位
” 章节。
■
更新了图 8–10。
■
更新了表 8–16 和表 8–17。
1.2
针对 Quartus II 软件版本 9.1 SP1 的发布进行的更新:
2010 年 2 月
2009 年 11 月
1.1
1.0
■
添加了 “ 覆盖内部振荡器 ” 和 “AP 配置 ( 支持闪存 )” 章节。
■
更新了 “JTAG 指令 ” 章节。
■
添加了表 8–6。
■
更新了表 8–2、表 8–3、表 8–4、表 8–6、表 8–11、表 8–13、
表 8–14、表 8–15 和表 8–18。
■
更新了图 8–4、图 8–5、图 8–6、图 8–13、图 8–14、图 8–15、
图 8–17、图 8–18、图 8–23、图 8–24、图 8–25、图 8–26、
图 8–27、图 8–28 和图 8–29。
首次发布。
Altera 公司 2011 年 11 月 Cyclone IV 器件手册,
卷 1
8–82
Cyclone IV 器件手册,
卷 1
Chapter 8: Cyclone IV 器件的配置和远程系统更新
文档修订历史
Altera 公司 2011 年 11 月
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement