AMD 器件具有专用的全局置位/复位信号 (GSR)。在器件配置结束时,此信号会设置硬件中所有时序单元的初始值。
如果未指定初始状态,将为时序原语分配默认值。在大多数情况下,默认值为 0。FDSE 和 FDPE 原语是例外,其默认为逻辑 1。每个寄存器在配置结束时都将处于已知状态。因此无需编写仅用于在上电时初始化器件的全局复位代码。
AMD 强烈建议您谨慎判断何时设计需要复位以及何时不需要复位。大多数情况下,在控制路径逻辑上可能需要复位以确保正常运行。然而在数据路径逻辑上通常不需要复位。复位的使用限制如下:
- 限制复位信号线的总体扇出。
- 减少复位布线所需的互连数量。
- 简化复位路径的时序。
- 在大多数情况下,这样即可整体改善时钟频率、面积和功耗。
建议: 评估每个同步块,尝试判断是否需要复位以确保正常运行。默认情况下,除非确定确实有需要,否则请勿编写复位代码。
功能仿真可轻松判断是否需要复位。
对于不含复位编码的逻辑,可以灵活选择用于映射逻辑的器件资源。
随后,综合工具即可选择最适合代码的资源,并通过考量如下因素来尽可能实现最佳结果:
- 请求的功能
- 时钟周期要求
- 可用器件资源
- 功耗