原创 时序优化一例(三)

2012-8-22 09:28 2528 20 22 分类: FPGA/CPLD 文集: altera FPGA

         在使用两种方法(时序优化一例(时序优化一例()对设计进行时序优化后,设计的建立时间余量从-1.070优化到-0.240,但是时序还未达到收敛,继而尝试了许多其它方法:

    (一)局部优化

         时序优化一例(中的物理综合优化是全局的,可能对关键路径的优化还不够彻底。翻阅了一些资料,发现可以针对一个模块或者节点进行局部优化,因此可以直接对关键路径进行直接优化。方法是在QuartusII软件中,打开Assignments->Assignment Editor,如图1所示,可以在其中加入需要优化的节点或者模块,优化选项与全局优化选项类似,如图2所示,在Assignment Name下拉菜单中可选择不同的优化策略。

20111014141856001.jpg

1

20111014141856002.jpg

2

         但是遗憾的是采用局部优化后,时序还是没有收敛!

 

    (二)LogicLock

         使用Logiclock可以创建一个floorplan,用于将设计中的部分模块逻辑的布局布线限制在模块区域中。但是其主要用于增量编译中,与design partition配合使用,将一个设计分区的布局布线限定在一个Logiclock区域中,如果分区的布局布线已达到要求,可以设置保留该分区布局的布局布线信息,那下次编译时可以跳过对该设计的布局布线过程,减少了编译时间。

         但是使用Logiclock对时序性能并没有什么好处,反而可能会起到反效果。因为fitter并不对Logiclock区域之间的布线进行优化,而如果Logiclock区域划分不合理,关键路径正好处于跨区域中,那在之前对关键路径所作的时序优化算是白费了。

         在我的设计中,现阶段关键路径处于除法器IP内部,也没别的什么办法去优化这个IP了,可能是其它模块的布局布线对除法器模块产生了影响,那就“瞎猫碰死耗子”一把,试一试,万一有小惊喜呢!使用Logiclock将除法器布局布线与其它模块的布局布线隔离,将此除法器模块单独建立分区和创建Logiclock区域。分区如图3所示,可以看到Div模块因为分区被单独分离出来;Logiclock如图4所示,div模块的逻辑被限定在单独的一个Logiclock区域中布局布线。

20111014141856003.jpg

3

20111014141856004.jpg

4

         然后来check一下timing,值得欣慰的是,时序好了一些,如图5所示,建立时间余量减小到-0.224ns了,关键路径还在除法器内部。通过分区逻辑隔离、创建Logiclock区域进行布局布线隔离还是起到了意想不到的效果,尽管这效果很小。

20111014141856005.jpg

5

文章评论2条评论)

登录后参与讨论

用户377235 2014-5-6 22:57

写得很好,谢谢分享!

用户424077 2013-2-26 11:01

谢谢,学习一下
相关推荐阅读
Hoki 2017-01-11 17:35
LX9开发板呼吸灯实现
对LX9开发板硬件评测后,从这一节开始真正进入FPGA开发的世界。很多开发板的例程中必有跑马灯实验,老跑马也没意思,咱来把新潮的,整一个呼吸灯。 呼吸灯最初是出现在apple公司的笔记本产品中,当合上...
Hoki 2017-01-11 16:47
LX9的microblaze配置
虽然XC6SLX9芯片资源比较少,但是嵌一个microblaze还是搓搓有余的,这一节就来评测一下在XC6SLX9上microblaze的配置。 有两种方法配置microblaze,一是在ISE软件中...
Hoki 2017-01-11 16:32
zynq评测
Zynq芯片是业界第一款在FPGA中集成ARM核的芯片,由FPGA的发明者xilinx公司推出的。Zynq严格来说不能以FPGA来定义它,因为其是以处理器为中心的平台,能够在单芯片上提供软、硬件和 I...
Hoki 2017-01-11 16:19
u-boot
Zyny芯片启动加载分为3步: 1. 芯片上电启动,首先读取BootROM中的程序,初始化一些必要的外设,然后根据专用引脚电平判断该从何处启动first stage Bootloader(FSBL),...
Hoki 2017-01-11 16:09
基于zynq的交叉编译平台
Zynq芯片的最大特点是其集成了双ARM Cortex-A9处理器,因此zynq的应用基本是以这个ARM核为核心,再配合FPGA逻辑作为协处理器,几乎能实现所有较复杂的应用。并且在ARM上可以跑操作系...
Hoki 2017-01-11 15:54
u-boot image生成
这节介绍一下如何生成u-boot image文件,在SDK软件中点击Xilinx Tools→Create Boot Image工具即可生成,但是生成image文件需要首先集齐3个文件:u-boot....
我要评论
2
20
关闭 站长推荐上一条 /2 下一条