第一章:
AGM FPGA 在配置成功时, PLL 已经完成锁定, lock 信号已经变高;如果原设计中用 lock 信号输出实现系统 reset 的复位功能,就不能正确完成上电复位; 同时,为了保证 PLL 相移的稳定,我们需要在 PLL 启动后做个延时的复位,设计中可以参考下面 Verilog 代码,这里需要 PLL 的 areset 或 pfdena 引出,通过复位信号控制。
reg [5:0] reset_init = 6'b0 /* synthesis syn_preserve = 1*/; wire init = reset_init[5]; always @ (posedge inclk) begin if (!init) begin reset_init <= reset_init + 1'b1; end end PLL inst ( .inclk(inclk), .areset(!init), .pfdena(init), .... ); |
如果在设计中对配置 FLASH 进行读写,则要在 Quartus II 中把 4 个 SPI 配置管脚设置为“Useas regular I/O”。
如果 FPGA 的资源利用率达到 90%以上,且时序要求较高,海振远科技建议把 1.2V 的 VccINT 电压,升高到正常电压范围的 1.25V,会有效提高 FPGA 性能和稳定性。
烧写配置用 SPI FLASH,使用 XXX_master.bin,可通过 FLASH 编程器烧写。如使用其它兼容Altera POF 文件的烧写工具,需注意 Altera 文件 MSB-LSB 为反向,需倒置后才可正确烧写。
如果使用 USB-Blaster 通过 AS 接口在线烧写配置用 SPI FLASH,由于 AG10K 的 DCLK、 nCSO、ASDO 管脚并未输出三态,因此需分别串接 1KΩ 电阻,使得 USB-Blaster 驱动能力高过这些管脚的输出能力,且 DCLK 时钟降低频率,即可实现正常烧写和配置。
如 FPGA有 JTAG接口,则可直接通过 Supra软件烧写 XXX_master.prg文件到已连接的 SPI FLASH中,无需通过 AS 接口,更为方便。
CLK 专用输入管脚,没有内部上拉电阻,所以在悬空没有输入状态时,会得到 0 的电平数据。这和 Altera EP4C 的高电平结果不同。如果正常输入时钟或信号,则没有影响。
支持 latch, 但建议设计不用 latch, 异步电路时序不容易分析操作,建议不使用。
所有 fpga 逻辑必须发生在 fpga 配置完成之后(conf_done 为高),否则 fpga 无法稳定接受开始工作。
如设计中使用了除法器,需对除法器的路径设置 multicycle。除法器的 latency 即为 multicycle的时钟数。如无法满足 timing,建议增加除法器的 latency。
AG10K 支持 AS 模式的烧写文件压缩,以减少存储空间。但不同设计压缩出的文件大小不一,如需统一文件存储空间,可选非压缩方式。
AG10K 不支持 PS 模式的烧写文件压缩。原设计里如果选了压缩,请取消;或者在 AGM 项目中的 DesignName.asf 中加入:
set_global_assignment -name ON_CHIP_BITSTREAM_DECOMPRESSION OFF
软件中要按实际 IO 电压正确设置。 Quartus II 中对 IO standard 的默认为 2.5V,如果实际采用3.3V,需要修改 IO 默认值为 3.3V。
AG10KSDE176,由于 SDRAM 为 3.3V, VCCIO 必须使用 3.3V,软件中也要设置正确。
AG10K 3.3V VCCIO 电源应略先于 VCCINT 1.2V 和 2.5V 上电,这样保证 FPGA 在启动配置前,使得配置 FLASH(3.3V)启动完成,从而避免上电配置失败。
为了避免时钟域 skew 或 jitter,如果需要同频率同相位的时钟驱动不同功能, 尽可能合并成同一个时钟进行处理,不要采用多个同样的输出时钟这种方式,避免跨时钟域的情况出现。
不同频的时钟,尽可能采用 RAM 或者 FIFO 交互,如果寄存器直接交互,尽可能通过设计保证时钟采样在数据中间位置。
当逻辑资源比较紧张时,推荐将同步复位改为异步复位,可以节省一定的逻辑资源;
AG10KL144H 为 AG10KL144 升级型号,封装管脚兼容,性能更优,增加部分功能特性。芯片丝印: 根据不同批次, 有 以下2 种,均为正确标识。
1. 型号标识为 AG10KL144H
2. 日期编码(DATE CODE) 后加 H,型号标识仍为 AG10KL144;
原 AG10KL144 设计替换为 144H,需要注意以下事项:
1. Supra 原工程需要重新编译, Device 选择 AG10KL144H,其它设置可以不变。
2. AG10KL144 PLL 的复位控制可以省去,如已加入也可正常使用。(参考上节 1.)
3. AS 口烧写 FLASH 用 XXX_master_as.prg 文件, SPI 端口不需串接电阻。(参考上节 5.)
4. PS 烧写可以支持数据文件的压缩。(参考上节 10.)
5. 原 AG10KL144 的 Dual-Boot IP: alta_boot 已取消,可以用 Remote-Upgrade IP 替代,具体
可以参考 Manual_remote.pdf 文档。
6. 原 AG10KL144 的 MCU IP: alta_mcu 已取消,可以用 alta_mcu_m3 替代。
7. 新增支持 Quartus II 中的 Signal Tap 功能,编译烧录后可使用。
如有项目需要样品测试评估,可以联系海振远科技申请。