首页 理论教育ECO流程的优化探讨

ECO流程的优化探讨

【摘要】:本小节以ecoAddRepeater为例,介绍如何使用ECO指令进行时序方面的ECO修正。可以看到,Hold有约0.062ns的违例,违例并不大,因此考虑使用ECO指令进行修复。进行ECO修复后的时序报告如图8.35所示,注意加入的instance为FE ECO165scnsiga,由于其cell delay为0.28,使得Slack为0.136,最终满足时图8.33 设计Hold违例报告窗口图8.34 InteractiveECO窗口序要求。图8.35 插入buffer后的时序报告窗口图8.36 设计完成后时序报告窗口

常见用于时序修复的EDI ECO指令有ecoAddRepeater、ecoChangeCell和ecoDeleteRepeater,它们的作用分别为插入指定单元、改变指定单元以及删除指定单元。本小节以ecoAddRepeater为例,介绍如何使用ECO指令进行时序方面的ECO修正。

首先,使用reporttiming报告最差路径的时序(Hold检查),报告结果如图8.33所示。

可以看到,Hold有约0.062ns的违例,违例并不大,因此考虑使用ECO指令进行修复。由于Hold的修复方式为增加数据路径的延时,所以考虑在数据路径使用ecoAddRepeater增加一个buffer,从而使之满足时序要求。

使用操作OPtimize-interactiveECO,调出InteractiveECO窗口,如图8.34所示。可以使用Net或者Terminals的方式来指定插入buffer的位置。由于在时序报告中可以清楚知道违例Hold路径上最后一级寄存器的端口名称,所以使用Terminals的方式插入buffer。选择Terminals中的Listed Terminals选项,在后面的空格中填入instance的pin(D端)。在New Cell中选择插入的单元,本节选用BUFV1V33。其余选项使用默认选项,单击“Apply”按钮插入buffer。

进行ECO修复后的时序报告如图8.35所示,注意加入的instance为FE ECO165scnsiga,由于其cell delay为0.28,使得Slack为0.136,最终满足时

978-7-111-55094-5-Chapter08-33.jpg

图8.33 设计Hold违例报告窗口

978-7-111-55094-5-Chapter08-34.jpg

图8.34 InteractiveECO窗口

序要求。请注意,在ECO指令后很可能会给设计带来route方面的局部违例问题,所以一般会在ECO操作后增加ECO Route进行修正。

设计全部完成之后的时序分析及整体版图如图8.36所示,可见时序并无问题。进行到此步骤即可以进行验证方面的工作,EDI设计流程至此就可以画上句号。

978-7-111-55094-5-Chapter08-35.jpg

图8.35 插入buffer后的时序报告窗口

978-7-111-55094-5-Chapter08-36.jpg

图8.36 设计完成后时序报告窗口