跳转至

EF2L45BG256B

1. 型号差异

1.1 上电初始化+加载时间

  • 测量方式:3.3V供电上升沿为起点,Done信号上升沿为终点,起点和终点时间差
  • 时间差异:L上电到运行1ms-5ms,安路10ms-50ms
  • 升级前后部分IO保持功能(EF2只支持JTAG保持IO):需要保证区分上电和升级的
    外部输入信号全流程可控,必须有外部电阻上拉或者下拉
  • 解决方案(服务器客户):安路启动慢影响和解决

1.2 差分对差异

  • L 所有真差分对安路都支持,但是安路的真差分L 不一定支持(安路PN命名,L AB命名)
  • 差分一般都是高速应用,输入时钟从GCLK P/N进(延时固定),输出时钟没有要求
  • 100欧姆终端电阻建议外部放置,板子空间有限和成本考虑时候用内部(需要考虑差模超500mV和内部是否有电阻)

1.3 输出IO在程序加载(20ms)差异

  • GPIO命名引脚+配置引脚(包含8个D[7:0]命名)在上电阶段为弱上拉
    如果有上电低电平需求建议下拉1k,非配置IO因为是高阻下拉10k即可

  • 二次确认:Datasheet里面搜索 "引脚在配置阶段的状态"

  • 安路IO上下拉电阻和串阻.md

2. 串阻和上下拉电阻阻值推荐

  • 串阻:22或33欧姆或其它,靠近输出信号放,边沿敏感或者频率较高信号可以改善信号质量
    IOBB电流不可调,IOBE的电流可调, 输出不加串阻如果layout没做好可能过冲无法通过软件改善

  • IO不推荐直接接电源或者GND,推荐加上拉或下拉或者直接悬空(没有特殊功能的引脚)

  • 上拉电阻:4.7kΩ,绝大部分情况1k-10k也没有问题

  • 下拉电阻

    1. 上电阶段弱上拉IO(配置相关IO):需要上电阶段为低电平则下拉1k(0.25V)-2k(0.5V)
    2. 上电阶段本身是高阻的IO: 如果关心上电阶段电平,尽量还是有下拉电阻,1k/4.7k/10k均可,如果悬空电平可能不确定

3. 电源和退耦电容

  • 参考文档

    1. TR403_EF2L45BG256B功耗参考测试.pdf
    2. TN1707_安路科技EF5系列FPGA 硬件设计指南.pdf
  • 参考132B封装的电容数量,
    AUX电容按退耦表格来,VCCIO用的比较满电容按表格来,只是一两个IO可以酌情删减
    10uF是平滑电源波动(可以2个4.7uF替换),0.1uF是滤掉高频毛刺分量

4. 输入时钟(输出时钟没有要求)

4.1 PLL参考时钟输入

  1. 安路这个型号内部振荡器误差±30%,
  2. 如果对精度要求高必须加外部晶振,从全局时钟引脚GCLK P端进(L命名为PCLK T)
  3. 有源晶振输出端一般有串阻22或33Ω,这样信号质量好点
  4. 上电后等输入时钟稳定再对pll复位,时间大于100us,
    保证多通道输出相位稳定,否则高低温可能有1ns左右相位差
    单通道输出时钟没有相位概念, 保证输入稳定后复位即可
  5. 有条件可以GCLKIO_T[3:0]和GCLKIO_R[3:0]进pll参考时钟(离pll近),
    不强求,一般客户都是只用pll输出的时钟作为逻辑时钟驱动

4.2 高速时钟输入

  1. 超过10Mhz的输入时钟要从全局时钟引脚进, 全局时钟每次编程延迟一致,
  2. 普通IO输入时钟每次编程走线不一致导致几个ns的差异,比如1ns-3ns
  3. 以太网的RGMII的RX CLK必须从GCLK P端进
  4. I2C这种低速接口(最大400kHz)没必要接GCLK,以及其它类似的
  5. SPI从机 CLK某些场景直接当成内部时钟用,
    引脚用的比较少的情况也可以从GCLK P端进(但是GCLK资源有限)
    一般推荐过采样(这种情况是当成数据处理不需要走专门时钟)
    SPI尽量放在一个bank里面,延时一致性好点

5. 配置管脚

  1. HSWAPEN:无实际引脚,JTAG烧录位流改写
  2. MSEL[1:0]:无实际引脚,JTAG烧录位流改写
  3. PROGRAM/INIT/DONE/JTAGEN: 推荐4.7k上拉
  4. JTAGEN,TDI,TDO,TMS要求通过4.7K电阻上拉,
  5. TCK:EF/EG/SF系列下拉4.7k,PH/DR系列上拉
  6. VREF:放0.1uf电容,这个是给下载器的电平转化芯片245的输出端供电

6. 高速信号串扰规避(1Mhz以下可以不用关心)

  • 例子:差分对P/N两个引脚,一个引脚输入100Mhz时钟,
    一个引脚开漏输出(比如IIC), 可能会导致这个输出信号低于3.3V。

  • 一端高速信号,一端边沿敏感信号(时钟、复位、异步、开漏输出、写使能等. )

  • 不推荐将一对差分IO的P端和N端分别用作单端IO时,
    一个IO输入和另一个IO输出的时钟信号,对时钟信号质量有影响。
    高速信号(5Mhz以上)输入输出尽量避开这种情况。

  • 差分的另一端是否存在下过冲,过冲不得低于-0.3V,否则可能内部100欧姆电阻会误打开

7. IO用满情况下注意事项

  • JTAG_EN可以控制TCK,TDI,TDO,TMS四个引脚变成普通IO,
    建议MCU和下载器端在空闲时候都要注意JTAG引脚是否有冲突,避免IO损坏
  • PROG/INITN/DONE三个IO可以复用成普通IO,只建议成输出,输入容易导致加载问题
  • 配置和GPIO命名的IO注意上电20ms内是弱上拉的,
    有上电阶段必须低电平需求,则需要下拉1k(0.25V)或者2k(0.5V)

8. 差分LVDS

  • LVDS硬件和软件
    1. EF系列的差分引脚分为真差分和伪差分(LVDS25/33),具体看引脚命名,以最新Datasheet命名为准
    2. 输入速率都是800Mbps: 真差分内部有100Ω电阻,伪差分没有,
    3. 输出:真差分800Mbps,电流输出,伪差分就是2个单端互补输出320Mbps,电压输出,需要电阻网络分压
    4. 差分一般都是高速应用,输入时钟从GCLK P/N进(延时固定),输出时钟没有要求
    5. 100欧姆终端电阻建议外部放置,板子空间有限和成本考虑时候用内部(需要考虑差模超500mV和内部是否有电阻)

9. 热插拔

  • FPGA一直供电则不用关心
    FPGA板子作为一个子卡一直拔插有电无电切换才叫热插拔

  • EF2L15/25/45BG256 的
    F8,D9,F7,E8,C9,A9,A8,C8,J12,
    H13,G13,F14,G12,F15,E16,F12,D15
    不支持热插拔,有热插拔需求时,需要注意避开这些引脚。

10. 内置ADC不建议使用

  • 只有EF2L45/25/15BG256B有出厂测试校准ADC,
    但是有效精度只有8bit,对精度有要求也不建议使用

11. 异步信号

  • 异步时钟域,信号边沿判断必须打两拍再判断

12. 5V兼容不推荐

  • 5V信号不能在进入用户模式前接入,否则要外接二极管。

13. 输入信号和供电不匹配支持

14. 在线升级Flash

14.1 JTAG接口

  1. 逆变器客户和部分通信类服务器客户使用比较多
  2. Linux:BMC/CPU 裸机:MCU(移植注意堆和栈以及缓存是否足够)
  3. 支持背景升级完成后,刷新重加载过程的IO保持功能

14.2 I2C接口

14.3 SPI接口

  1. 不支持SPI硬核
  2. 内部合封SPI接口可以引出到外部引脚
  3. MCU直接通过此接口升级,软核也不支持刷新重加载过程的IO保持功能