Intel® Quartus® Prime Standard Edition用户指南: 部分重配置

ID 683499
日期 9/24/2018
Public
文档目录

1.6.5. 部分重配置周期波形

在内部主机模式下使用Altera PR IP时,默认情况下会满足各种接口信号之间的所有时序关系,您可以跳过阅读本节。 如果使用PR及外部主机,或者实现您自己的自定义PR内部主机逻辑,那么在设计逻辑时注意这些时序关系。PR主机启动PR请求,将数据传输到FPGA器件,并监控PR进程是否存在任何错误。

一个PR周期是由主机(内部或者外部)通过置位PR_REQUEST信号为高电平进行启动的。当FPGA器件准备好开始重配置时,它通过置位PR_READY信号为高电平进行响应。PR主机通过发送DATA [15:0]上的配置数据进行响应。数据与PR_CLK同步发送。当FPGA器件成功低接收到所有PR数据时,它将PR_DONE置位为高电平,并且置低PR_READY,表明PR周期完成。PR主机必须监控PR进程,直到PR成功完成(由PR_DONE指示),或者置位一个错误条件。

图 13. 部分重配置时序图

如果部分重配置期间遇到错误,那么FPGA器件置位PR_ERROR信号为高电平,并且置低PR_READY信号为低电平。

只要这两个信号中的一个信号被置位,主机就必须在8个PR_CLK周期内置低PR_REQUEST。作为对PR_ERROR错误的响应,主机可选择请求另一个部分重配置,或者执行一个完整的FPGA配置。

为防止不正确的行为,PR_DONEPR_ERROR信号置为高电平后的至少20个时钟周期PR_CLK信号都必须保持在有效状态(active)。一旦PR_DONE被置位,PR_REQUEST必须在8个时钟周期内被置低。PR_DONE由器件在20个PR_CLK周期内置低。主机可以在PR_DONE置低后的20个时钟周期后再次置位PR_REQUEST

表 4.  部分重配置时钟要求部分重配置的信号时序要求。

时序参数

值(时钟周期)

PR_READY to first data

4 (exact)

PR_ERROR to last clock

20 (minimum)

PR_DONE to last clock

20 (minimum)

DONE_to_REQ_low

8 (maximum)

Compressed PR_READY to first data

4 (exact)

Encrypted PR_READY to first data (when using double PR)

8 (exact)

Encrypted and Compressed PR_READY to first data (when using double PR)

12 (exact)

在部分重配置的任何时刻,如要暂停发送PR_DATA,则PR主机可以停止翻转PR_CLK。时钟可以停止为高电平或低电平。

在部分重配置任何时刻,PR主机都能够通过置低PR请求来终止进程。部分完成的PR进程会导致一个PR错误。通过20个周期之后发送新的PR请求,可以使PR主机在进程失败后重新启动PR进程。

如果在完成之前终止PR进程,并通过置位nConfig使用一个完整的FPGA配置进行跟进,那么在置位nConfig前必须翻转PR_CLK另外20个时钟周期,以刷新PR_CONTROL_BLOCK,从而避免锁定(lock up)。

在这些步骤中,PR控制模块可能置位PR_ERRORCRC_ERROR信号以指示在部分重配置期间存在错误。PR_ERROR的的置位表明PR比特流数据已损坏,并且CRC error的置位表明在PR进程完成期间或之后的CRAM CRC错误。如果PR_ERRORCRC_ERROR信号被置位,那么必须计划是重配置PR区域还是重配置整个FPGA,或者保持未配置的状态。

重要: 对于不同的器件,PR_CLK信号的标称最大频率是不同的。大多数Stratix V器件的标称最大频率至少为62.5 MHz。