当前位置: 首页 > news >正文

一些AG10K FPGA 调试的建议-Douglas

  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 功能,编译烧录后可使用。

http://www.lryc.cn/news/260650.html

相关文章:

  • 【模型量化】神经网络量化基础及代码学习总结
  • 次模和K次模是多项式可解吗?
  • 网络安全——SQL注入实验
  • 【cocotb】【达坦科技DatenLord】Cocotb Workshop分享
  • Kafka系列之:统计kafka集群Topic的分区数和副本数,批量增加topic副本数
  • 开具实习证明:在线实习项目介绍
  • MFC逆向之CrackMe Level3 过反调试 + 写注册机
  • 【Centos】
  • 1+X大数据平台运维职业技能等级证书中级
  • 网络基础(五):网络层协议介绍
  • 浅显易懂 @JsonIgnore 的作用
  • 【计算机设计大赛作品】诗意千年—唐朝诗人群像的数字展现_附源码—信息可视化赛道获奖项目深入剖析【可视化项目案例-20】
  • 「Swift」Xcode多Target创建
  • Python文件命名规则:批量重命名与规则匹配的文件
  • 『npm』一条命令快速配置npm淘宝国内镜像
  • Java EE 多线程之线程安全的集合类
  • 明明随机数
  • 优思学院|如何建立公司运营指标体系?如何推行六西格玛改进运营指标?
  • vue2 echarts不同角色多个类型数据的柱状图
  • Mysql表的数据类型
  • c语言单向链表
  • 『番外篇三』Swift “乱弹”之带索引遍历异步序列(AsyncSequence)
  • 学习JVM
  • Oracle MongoDB
  • Linux-RedHat系统-安装 中间件 Tuxedo
  • PHP中的依赖注入是怎样的?
  • Python求小于m的最大10个素数
  • 系统的安全性设计
  • 美容店预约小程序搭建指南
  • AI:ElasticSearch