利用SmartCompile和赛灵思的设计工具进行设计保存
(跨越Partition边界的连通性)被保证不会在各种实现之间被修改。这使得在Partition内的元器件和网络可从以前的实现中被复制并粘贴到当前的实现中。复制和粘贴这些设计信息的过程比重新实现要快得多,并且保证始终是前一次实现的准确复制。
Partition必须在设计被综合之前就在模块实例上进行设置。然后,综合引擎将把Partition接口作为待优化的障碍进行处理。例如,图2所示的异步逻辑结构可能被合并成一个更优化的形式。如果Partition在这个逻辑的一个部分上已被设置,综合引擎不能对它进一步优化,这是因为它会修改Partition接口。类似的情况会出现在像映射这样的下游实现工具中。逻辑内部和外部的Partition将被完全最优化。如果关键时序路径需要这种优化出现,它将会被Partition边界闭塞。为了避免出现这个问题,要把寄存器添加到跨越Partition边界的各种信号上,或者确信这些信号的时序不是关键的。
ISE 9.1i将自动确定要对哪一个Partitions进行重新实现。某些类型的设计变更只会影响直接相关的Partition。这些类型的设计变更包括源代码修改和物理约束。其它类型的设计变更将迫使所有的Partitions被重新实现。修改时序约束或优化设置如映射努力级别将影响整个设计。
在缺省条件下,Partition将促成实现工具保存从综合网表到已布线设计的所有实现数据。在某些情况下,它可能需要让像布线器这样的实现工具能修改某一个已保存的Partition,同时保存它的布局。Partition属性,即众所周知的保存(preserve),能实现这一级别的控制。Preserve可以被设置到综合、布局、 布线或继承上。继承属性将采用与Partition的双亲相同的特性。综合属性只保存综合网表;所有实现的其它方面可能会被修改。布局属性通过布局保存已综合的网表。此外,输出也可能被修改。布线属性将保证包括布线在内的所有实现数据得到保存。在 Synplify Pro Partition的流程中,由Partition流程保存的信息的级别(综合;布局与综合;或布线、布局与综合)作为一种属性在tcl 文件中有详细的说明,然后,再通过ISE布局和布线工具读出。
通过放宽要保存的信息级别,一些Partition的实现可以被修改。实现工具将尽可能多地保存Partition,同时,仍能满足时序约束的要求,而且还能成功的对设计进行布局和布线。 要促使Partition在没有任何保存的情况下完全地被重新实现,就要使用Partition的"rerun"命令。
采用 SmartGuide
SmartGuide对于像修改逻辑等式这样的小逻辑变更最为有用。像增加新的模块或实例这样大的变更,将会影响设计层次,并减少从以前的实现中成功匹配元器件的可能性。与SmartGuide能够很好配合的变更类型有:
·在一个或两个模块中的小逻辑变更(不到10%);
·移动引脚位置;
·改变一个元器件的属性;
·改变一个时序约束。
SmartGuide仅仅是在映射实现过程中开启的一个选项。SmartGuide自动地使用以时序约束为基础直接实现的映射时序算法。为了在ISE Project Navigator软件工具中启动SmartGuide,可从顶层菜单中选择Source > Use SmartGuide,或者右击顶层模块并选择 Use SmartGuide,如图3所示。
要在tcl接口上开启 SmartGuide,需要调用如下命令:
% project set "Use Smartguide" True
用批处理命令使用SmartGuide,要采用这种语法:
map "smartguide
par "smartguide
在设计被实现后,映射和标准报告将表明有多少设计被成功地引导。在以下所示的报告文件中,有71%的元器件及77%的网络被引导。
有关元器件和网络的详细信息被存储在引导报告文件(GRF)。该文件列出了被重新实现的新文件和网络的名称。
大约在10次的引导实现后,建议无需引导就进行重新实现以最优化整个的设计。这将使得以前已被引导的逻辑与新的或已修改过的逻辑之间得到最优化。
采用 Partitions
有若干策略可用于决定设计中什么逻辑模块成为待Partition的最佳候选模块。如果缩短运行时间是主要的目标,要把设计分成具有类似数量逻辑的4到10个之间的Partitions。如果其中的一个Partitions被修改,其它的将被保存。因此,保存数量与设计中Partitions 的数量是成比例的。另一个策略是当难以满足时序约束时实例创建一个Partition。一旦针对这个Partition的时序约束得到满足,即使在该Partition外部的逻辑被修改时,它也会被保存起来。
为了向设计添加更多的Partitions,存在一个逐渐减小的返回点。Partition接口是最优化的障碍。如果只能通过对 Partition接
赛灵思 SmartCompile 相关文章:
- 迅猛发展的模拟混合信号技术(02-15)
- 选择合适的转换器:JESD204B与LVDS对比(12-15)
- 12位串行A/D转换器MAX187的应用(10-06)
- AGC中频放大器设计(下)(10-07)
- 低功耗、3V工作电压、精度0.05% 的A/D变换器(10-09)
- PIC16C5X单片机睡眠状态的键唤醒方法(11-16)