在Vivado Design Suite中,优化后的Routing消息和Intermediate Route 结果保存在工程文件中的runs\impl_1中的runme.log文件。
一、Routing消息
当路由器由于拥塞或修复过多的保持时间违规而难以达到时序目标时,Routing消息会提供有用的消息。路由器在努力工作时通常会有以下表现:
1、过长的运行时间,每次迭代需要数小时
如果路由器花费了异常长的时间来寻找合适的布线路径,这可能意味着设计中存在严重的拥塞问题,即某些区域的布线资源被过度使用,导致路由器难以找到满足时序要求的路径。
2、报告的大量重叠,数量达数百或数千
如果路由器报告了大量的重叠,这意味着在物理布局中有太多的信号线交叉或重叠,这可能导致信号干扰、增加延迟或违反时序约束。
3、在估计的时序摘要中,建立和保持时间的裕量逐渐变差
如果建立和保持时间的裕量在估计的时序摘要中逐渐变差,这意味着设计的时序性能正在下降。建立和保持时间是确保电路正确运行的两个关键时序参数。如果裕量变小,那么电路在运行时可能会出现时序违规,导致功能错误或性能下降。
在电子设计自动化(EDA)流程中,路由器负责为电路中的信号线(即网络)找到最佳路径。当设计变得复杂且资源有限时,路由器可能会面临挑战,尤其是在满足时序约束方面。
路由器在以下情况发生时可能会提供进一步的警告消息:
•预计拥塞会对时序闭合产生负面影响
这通常发生在拥塞水平为5或更高时。拥塞水平5表示一个32x32(2^5 = 32)大小的拥塞区域。
•预计路由器修复保持时间违规的努力将非常高
这会影响满足整体建立时间要求的能力。
•特定的端点引脚同时成为建立时间关键和保持时间关键,且难以或无法同时满足两者
该消息将包括最多十个引脚的名称,以供设计分析。
• 特定的可配置逻辑块(CLBs)经历高引脚利用率或高布线资源利用率,导致局部拥塞
消息将包括最多十个最拥塞的CLBs的名称。
• 在极端情况下
当拥塞严重时,路由器会警告说拥塞阻止了路由器对所有网络进行布线,并且路由器将优先确保所有网络的布线成功完成,而不是时序优化。
当针对UltraScale设备或更高版本设备时,路由器会生成一个表格(如下图所示),显示初始估计的拥塞情况,以便在拥塞可能影响时序闭合时进行评估。该表格不显示特定区域,而是为整体评估提供不同类型拥塞的度量。拥塞被分为全局(设计范围)、长距离(跨越多个CLBs的连接)和短距离拥塞几个类别。通过比较不同运行的表格,可以确定哪些运行更有可能在不受到拥塞过多负面影响的情况下满足性能目标。
报告设计分析提供了复杂性和拥塞分析,可以进一步深入了解拥塞的原因和潜在的解决方案。拥塞报告还包括平均初始布线拥塞,它与路由器报告的拥塞并不完全相同,但可以与预布线设计进行对照分析,以确定哪些区域存在问题。
平均初始布线拥塞是一个重要的指标,它反映了在布线过程开始之前设计中存在的潜在拥塞情况。这个指标可以帮助识别出在设计初期就存在的热点区域,这些区域在后续的布线过程中可能会导致严重的拥塞问题。
通过报告设计分析,可以深入了解设计的复杂性和拥塞分布,进而采取针对性的措施来优化设计。例如,对于拥塞严重的区域,可以考虑重新分配资源、调整布局策略或优化关键网络的布线路径。此外,报告设计分析还可以提供其他有用的信息,如不同区域的资源利用率、关键网络的时序裕量等。
二、Intermediate Route Results(中间布线结果)
即使布线失败,路由器也会继续尝试提供一个尽可能完整的设计以辅助调试。如果布线没有完成,可能需要手动介入。
使用report_route_status命令可以识别具有布线错误的网络。
路由器在布线完成阶段报告布线拥塞情况。对于每个方向(北、东、南、西),会列出拥塞最严重的区域。对于每个区域,信息包括布线块的尺寸、标记为“Max Cong”的布线利用率以及边界框坐标(左下角到右上角)。“INT_xxx”数字是在设备布线资源视图中可见的互联布线块的坐标。
通过分析这些中间布线结果,可以识别出设计中的问题区域,并采取相应的措施来优化布线。例如,可以根据拥塞情况重新分配布线资源、调整布局策略或优化关键网络的布线路径。
在布线设计分析过程中,常用的命令如下表所示。