Chinaunix首页 | 论坛 | 博客
  • 博客访问: 284921
  • 博文数量: 74
  • 博客积分: 2811
  • 博客等级: 少校
  • 技术积分: 710
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-02 21:14
文章分类

全部博文(74)

文章存档

2011年(1)

2010年(24)

2009年(49)

我的朋友

分类:

2010-03-31 19:56:00

在 Altera 的新器件系列--例如 CycloneCyclone II、Stratix、Stratix II、MAX II 系列都有同样
的诸如和 5V I/O 信号的器件接口的问题,解决方法和下面的情况几乎完全一样。


Cyclone FPGA/CPLD 的 I/OI 标准:

  器件的 I/O 缓冲是可编程的,支持多种 I/O 电压标准。  器件的每个 I/O 组的可以编程,符合不同的 I/O 标准。


所有的 I/O 组可以配置成以下 I/O 标准:

● 3.3V LVTTL/LVCMOS
● 2.5V LVTTL/LVCMOS
● 1.8V LVTTL/LVCMOS
● 1.5V LVCMOS
● LVDS
● SSTL-2 Class I 和 II
● SSTL-3 Class I 和 II

I/O 组 1 和 3 也包括 3.3V PCI I/O 标准接口。见图 1。

图 1. 器件支持的 I/O 标准  

    注(1),(2),(3)
 
(2) 图 1 指示图形示例。参考管脚列表和 Quartus IIR 软件有关准确的管脚位置。
(3) 100 脚 TQFP 封装的 EP1C3 器件不支持 PLL LVDS 输入或外部时钟输出。

 


MultiVlot I/O 操作

  器件包括 MultiVolt I/O 操作,允许器件的内核和 I/O 块上电为分立的电压。VCCINT管脚为器件内核供电,VCCIO管脚为器件的 I/O 缓冲供电。

● 在同样的电平上(例如 3.3V,2.5V,1.8V 或 1.5V)为所有器件上具有 MultiVolt I/O 能力的 VCCIO管脚供电。参见图 2。

 

用 Cyclone FPGA 器件实现一个多电压系统

兼容 5.0V 器件
如果
  器件的输出直接连接到 5.0V 器件的输入,   器件可能无法和 5.0V 器件互操作。如果 器件的 VOUT比 VCCIO更高,若管脚驱动为高时 PMOS 上拉电阻仍可导电,阻止外部上拉电阻把电压拉至 5.0V。

  器件的 VCCIO管脚连接到 3.3V,Cyclone 器件就可以驱动 5.0V 的 LVTTL 器件了。这是因为 3.3V 接口的输出高电平(VOH)满足 5.0V LVTTL 器件 2.4V 的最小高电平电压。(Cyclone 器件不能驱动 5.0V 的 LVCMOS 器件)


因为   器件是符合 3.3V,32 位,66MHz PCI,输入电路接受的 4.1V 最大高电平输入电压(VIH)。为了用 5.0V 器件驱动   器件,你必须在   器件和 5.0V 器件之间连接一个电阻(R2)。见图 3。

.用 5.0V 器件驱动 Cyclone 器件

图 3.用 5.0V 器件驱动   器件

如果 VCCIO 是在 3.0V 和 3.6V 之间,PCI 钳位二极管使能,图 3 中 B 点的电压是 4.3V 或更低。为了限制大的电流从 5.0V 器件中
泄漏,R2 应该足够小保证快的信号上升时间,又要足够小不会违反器件驱动走线的高电平输出电流(IOH)规范。Cyclone
件内的 PCI 钳位二极管可支持 25mA 的电流。

为了计算所需的 R2 值,首先要计算 5.0V 器件中上拉电阻的模型。这个输出电阻(R1)可以用 5.0V 器件的供电电压(VCC)
除以 IOH:R1=VCC/IOH 来计算。
图 4 是 5.0V 器件的典型输出驱动特性示例

5.0V 器件的输出驱动特性如上 R1=5.0V/135mA。

                                图4.  5.0V 器件的输出驱动特性如上 R1 5.0V/135mA

●  资料手册上的值通常反应了典型的工作条件。从资料手册的值上扣除 20%作为参考值。那么上面例子的 R1 值为 30Ω。

R2 应选择不违反驱动器件的 IOH 规范。例如,如果上面的器件的最大 IOH 是 8mA,给定 PCI 钳位二极管,VIN=VCCIO+0.7V=
3.7V。假定 5.0V 器件的最大供电负荷(VCC)将是 5.25V,R2 的值可以由下面的等式计算出:

这种分析假定了最糟的情况。如果你的系统的供电电压变化不大,你可相应地调整这些计算。
因为 Cyclone 器件对 5.0V 器件的容忍需要使用 PCI 钳位,这个钳位在配置期间才已生效。5.0V 信号可能无法驱动器件直到期间配置完成。

● 如果需要双向的 IO 接口,则必须得要专用的电压转换芯片来实现了,比如 SN74CBTD3384C 等。Altera 的 MAX II 的开发板。

上就用了 5 个 SN74CBTD3384C,但是从实践中来看,选用 IDT 的 74ALVC164245 外围最少,最直观。

热插拔

热插拔也就是热交换,指的是在系统加电时在系统上插入或拔除板子或器件。对于支持热插拔的系统,子系统或器件的插入或拔除不会破坏系统或中断系统工作。

所有的 Cyclone 系列器件都支持热插拔而无需特殊的设计。Cyclone 器件已经具备了以下特性支持热插拔:

●  在上电前驱动器件不会损害器件。
●  在上电器件 I/O 管脚保持三态。
●  信号管脚不会驱动 VCCIO或 VCCINT 供电。

上电前驱动器件

Cyclone 器件的 I/O 管脚,专用输入管脚和专用时钟管脚可以在上电之前或期间驱动,而不会损害器件。 在上电器件 I/O 管脚保持三态不支持热插拔的器件在上电之前或期间可能会中断系统工作或造成驱动冲突。对于 Cyclone 器件,在上电和配置前或期间 I/O管脚是三态,不会出现这种问题。

信号管脚不会驱动 VCCIO或 VCCINT 供电在这些管脚的上电时,不支持热插拔的器件将会短路供电。这种不正常的上电会破坏驱动和被驱动的器件,可能干扰板卡的上电。

  器件中,在上电之前或期间,I/O 管脚,专用输入管脚或专用时钟管脚没有 VCCIO 或 VCCINT 的电流路径。Cyclone 期间可以插入(或拔除)一个上电的系统,而不会破坏或干扰系统板的工作。当热插拔时,  器件对背板的信号完整性的影响最小。

●  当热插拔  器件是最大的 DC 电流小于300uA,而热插拔器件的最大 AC 电流小于 8mA,持续时间小于 10ns。

在热插拔器件,器件的信号管脚可能会在供电之前被启动的系统连接或驱动。众所周之的锁闭,这种情况下可能引起器件内的寄生二极管打开,造成器件消耗大量的电流,会引起电的损伤。这种操作可能也会引起被驱动器件内的寄生二极管打开。  器件在热插拔时能够防止锁闭。

[FS:PAGE]

上电顺序

因为   器件可以在多电压环境中使用,它们设计成能够容忍任何的上电顺序。VCCINT 或 VCCIO 可以一开始给器件供电,3.3V,2.5V,1.8V 或 1.5V 输入信号可以驱动器件而在 VCCINT 或 VCCIO 供电之前不需要特殊的预防措施。 器件可以在比 VCCINT电平更高的 VCCIO电平下工作。你也可以在板子上电的同时改变 VCCIO供电电压。然而,你必须确保 VCCINT 和 VCCIO供电必须满足正确操作条件。

当 VCCIO和 VCCINT从不同的电源供电给  器件,VCCIO和 VCCINT之间会有延迟。标准操作不会发生直到两个电源都达到推荐的操作范围。当 VCCINT上电时,IEEE Std.1149.1 JTAG 电路被启动。如果 TMS 和 TCK 连接的 VCCIO而 VCCIO没有上电,JTAG 信号是不固
定的。然而,TCK 的任何改变可能会引起状态机转移到一个无效的 JTAG 状态,当 VCCIO最后上电完成后,会造成工作不正常。
为了在上电器件禁止 JTAG 状态,TCK 应该拉低确保 TCK 不会出现无意的上升沿。

加电复位

在设计电路时,考虑上电的系统状态是很重要的。  器件在上电器件维持一个复位状态。当电压施加到 Cyclone 器件上,如果 VCC在一定的时间内(规定为 VCC最大上升时间)达到推荐的工作范围,加电复位才会启动。因为更慢的上升时间会造成器件初始化不正确和功能无效,如果这些条件不满足那么 POR 就不会发生。

如果 VCCINT 无法保持在规定的工作范围内,就无法保证正常工作直到 VCCINT 重新回到工作范围内。

结论

PCB 通常包含 5.0V3.3V,2.5V,1.8V 和 1.5V 器件。  器件系列的 MultiVolt I/O 操作能力允许你把新一代的器件和不同电压的器件集成在一起。这种能力也让器件内核以内核电压 VCCINT 运行,而保证 I/O 管脚符合其它逻辑电平。Altera 设计的器件允许 VCCINT和 VCCIO按任意顺序上电,集成支持热插拔,使得系统设计变的更加容易。

阅读(1982) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~