一些AG10K FPGA 调试的建议-Douglas

2023-12-15 10:41:28
  1. PLL
    AGM FPGA 在配置成功时,PLL 已经完成锁定,lock 信号已经变高;如果原设计中用 lock 信号输出实现系统 reset 的复位功能,就不能正确完成上电复位;同时,为了保证 PLL 相移的稳定,我们需要在 PLL 启动后做个延时的复位,设计中可以参考下面 Verilog 代码,这里需要 PLL 的 areset 或 pfdena 引出,通过复位信号控制。
    在这里插入图片描述

  2. Flash 管脚
    如果在设计中对配置 FLASH 进行读写,则要在 Quartus II 中把 4 个 SPI 配置管脚设置为“Use as regular I/O”。在这里插入图片描述

  3. VccINT
    如果 FPGA 的资源利用率达到 90%以上,且时序要求较高,建议把 1.2V 的 VccINT 电压,升高到正常电压范围的 1.25V,会有效提高 FPGA 性能和稳定性。

  4. FLASH 编程文件
    烧写配置用 SPI FLASH,使用 XXX_master.bin,可通过 FLASH 编程器烧写。如使用其它兼容Altera POF 文件的烧写工具,需注意 Altera 文件 MSB-LSB 为反向,需倒置后才可正确烧写。

  5. AS 在线烧写 FLASH
    如果使用 USB-Blaster 通过 AS 接口在线烧写配置用 SPI FLASH,由于 AG10K 的 DCLK、nCSO、ASDO 管脚并未输出三态,因此需分别串接 1KΩ 电阻,使得 USB-Blaster 驱动能力高过这些管脚的输出能力,且 DCLK 时钟降低频率,即可实现正常烧写和配置。
    如FPGA有JTAG接口,则可直接通过Supra软件烧写XXX_master.prg文件到已连接的SPI FLASH中,无需通过 AS 接口,更为方便
    在这里插入图片描述

  6. CLK 输入管脚
    CLK 专用输入管脚,没有内部上拉电阻,所以在悬空没有输入状态时,会得到 0 的电平数据。
    这和 Altera EP4C 的高电平结果不同。如果正常输入时钟或信号,则没有影响。

  7. Latch 锁存器
    支持 latch, 但建议设计不用 latch, 异步电路时序不容易分析操作,建议不使用。

8.Conf_done
所有 fpga 逻辑必须发生在 fpga 配置完成之后(conf_done 为高),否则 fpga 无法稳定接受开始工作。

  1. 除法器
    如设计中使用了除法器,需对除法器的路径设置 multicycle。除法器的 latency 即为 multicycle的时钟数。如无法满足 timing,建议增加除法器的 latency。
    在这里插入图片描述

  2. 烧写文件压缩
    AG10K 支持 AS 模式的烧写文件压缩,以减少存储空间。但不同设计压缩出的文件大小不一,如需统一文件存储空间,可选非压缩方式。
    AG10K 不支持 PS 模式的烧写文件压缩。原设计里如果选了压缩,请取消;或者在 AGM 项目中的 DesignName.asf 中加入:
    set_global_assignment -name ON_CHIP_BITSTREAM_DECOMPRESSION OFF

  3. 3.3V IO
    软件中要按实际 IO 电压正确设置。Quartus II 中对 IO standard 的默认为 2.5V,如果实际采用3.3V,需要修改 IO 默认值为 3.3V。

AG10KSDE176,由于 SDRAM 为 3.3V,VCCIO 必须使用 3.3V,软件中也要设置正确。

  1. 电源上电顺序
    AG10K 3.3V VCCIO 电源应略先于 VCCINT 1.2V 和 2.5V 上电,这样保证 FPGA 在启动配置前,使得配置 FLASH(3.3V)启动完成,从而避免上电配置失败。

  2. PLL 时钟输出
    为了避免时钟域 skew 或 jitter,如果需要同频率同相位的时钟驱动不同功能,尽可能合并成同一个时钟进行处理,不要采用多个同样的输出时钟这种方式,避免跨时钟域的情况出现。
    不同频的时钟,尽可能采用 RAM 或者 FIFO 交互,如果寄存器直接交互,尽可能通过设计保证时钟采样在数据中间位置。

  3. 逻辑资源优化
    当逻辑资源比较紧张时,推荐将同步复位改为异步复位,可以节省一定的逻辑资源;

AG10KL144H 转换注意事项
AG10KL144H 为 AG10KL144 升级型号,封装管脚兼容,性能更优,增加部分功能特性。
芯片丝印:根据不同批次,有 2 种,均为正确标识。

  1. 型号标识为 AG10KL144H;

  2. 日期编码(DATE CODE)后加 H,型号标识仍为 AG10KL144
    原 AG10KL144 设计替换为 144H,需要注意以下事项:

  3. Supra 原工程需要重新编译,Device 选择 AG10KL144H,其它设置可以不变。

  4. AG10KL144 PLL 的复位控制可以省去,如已加入也可正常使用。(参考上节 1.)

  5. AS 口烧写 FLASH 用 XXX_master_as.prg 文件,SPI 端口不需串接电阻。(参考上节 5.)

  6. PS 烧写可以支持数据文件的压缩。(参考上节 10.)

  7. 原 AG10KL144 的 Dual-Boot IP: alta_boot 已取消,可以用 Remote-Upgrade IP 替代,具体
    可以参考 Manual_remote.pdf 文档。

  8. 原 AG10KL144 的 MCU IP:alta_mcu 已取消,可以用 alta_mcu_m3 替代。

  9. 新增支持 Quartus II 中的 Signal Tap 功能,编译烧录后可使用。

文章来源:https://blog.csdn.net/Embeded_FPGA/article/details/134922892
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。