在给FPGA做逻辑综合和布局布线时,需要在工具中设定时序的约束。通常,FPGA设计工具中都FPGA中包含有4种路径:在从输入端口到寄存器,从寄存器到寄存器,从寄存器到输出,从输入到输出的纯组合逻辑。通常,需要对这几种路径分别进行约束,以便使设计工具能够得到最优化的结果。下面对这几种路径分别进行讨论。
1从输入端口到寄存器从输入端口到寄存器:这种路径的约束是为了让FPGA设计工具能够尽可能的优化从输入端口到第一级寄存器之间的路径延迟,使其能够保证系统时钟可靠的采到从外部芯片到FPGA的信号。约束名称:i
putdelay。约束条件的影响主要有4个因素:外部芯片的Tco,电路板上信号延迟Tpd,FPGA的Tsu时钟延迟TclkTco的参数通常需要查外部芯片的数据手册。计算公式:i
putdelayTcoTpdTsuTclk。FPGA的Tsu也需要查FPGA芯片的手册。FPGA速度等级不同,这个参数也不同。Tpd和Tclk需要根据电路板实际的参数来计算。通常,每10cm的线长可以按照1
s来计算。例如:系统时钟100MHz,电路板上最大延迟2
s,时钟最大延迟17
s,Tco3
s,FPGA的Tsu为02
s。那么输入延迟的值:maxI
putdelay23021735
s这个参数的含义是指让FPGA的设计工具把FPGA的输入端口到第一级寄存器之间的路径延迟(包括门延迟和线延迟)控制在10
s35
s65
s以内。2寄存器到寄存器寄存器到寄存器:这种路径的约束是为了让FPGA设计工具能够优化FPGA内寄存器到寄存器之间的路径,使其延迟时间必须小于时钟周期,这样才能确保信号被可靠的传递。由于这种路径只存在于FPGA内部,通常通过设定时钟频率的方式就可以对其进行约束。对于
f更深入的优化方法,还可以采用对寄存器的输入和寄存器的输出加入适当的约束,来使逻辑综合器和布线器能够对某条路径进行特别的优化。还可以通过设定最大扇出数来迫使工具对其进行逻辑复制,减少扇出数量,提高性能。3寄存器到输出寄存器到输出:这种路径的约束是为了让FPGA设计工具能够优化FPGA内部从最后一级寄存器到输出端口的路径,确保其输出的信号能够被下一级芯片正确的采到。约束的名称:outputdelay。约束条件的影响主要有3个因素:外部芯片的Tsu,电路板上信号延迟Tpd,时钟延迟Tclk。Tsu的参数通常需要查外部芯片的数据手册。计算公式:outputdelayTsuTpdTclk。例如:系统时钟100MHz,电路板上最大延迟2
s,时钟最大延迟17
s,Tsu1
s,输出延迟的值:maxoutputdelay121713
s。这个参数的含义是指让FPGA的设计工具把最后一级寄存器到输出r