第六章-IP核综合指南.ppt_第1页
第六章-IP核综合指南.ppt_第2页
第六章-IP核综合指南.ppt_第3页
第六章-IP核综合指南.ppt_第4页
第六章-IP核综合指南.ppt_第5页
免费预览已结束,剩余33页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第六章IP核综合指南,综合问题概述,对于参数化软核的综合存在一些需要注意的问题:进行与IP核相关的综合脚本设计时,必须考虑到让集成者综合IP核后,在最终芯片中可以满足对时序的要求IP核必须满足集成者使用的门阵列和标准单元库的时序要求IP核必须满足集成者特别配置后的时序要求,IP核的综合和时序设计要在整个设计的早期开始。IP核功能规范必须清楚地描述设计的时序、面积和功耗需求对于那些比较大、时序问题关键的模块,需要详细的技术规范。甚至该模块中包含的子模块也要有详细的时序需求和接口描述。还需要对输入/输出端口信号的延时和负载能力进行详细描述。在RTL编码的开始阶段,就要考虑如何同时满足设计对功能和时

2、序的要求。如果RTL编码先考虑设计的功能,然后再对时序问题进行修正,那么可能会使设计延期完成,而且最终性能也达不到好的效果。设计中的每一个可综合单元或模块都有各自的时序规划,一旦每个模块都满足了时序规划,那么相应的整个IP核的时序也就满足了设计要求。综合问题被局部化了。,IP核综合策略,两种综合策略:自顶向下和自底向上。都需要再设计过程的早期就制定出该设计的详细综合约束条件。精确、合适的约束条件是综合和物理设计成功的关键。自顶向下的综合策略首先需要有顶层约束,然后由综合工具根据顶层约束对顶层下的各个模块进行时序划分。综合工具需要对整个核模块进行一次综合。对于100K门以下的设计,自定向下的综合

3、策略常常可以给出比较好的结果。自底向上的综合策略是对组合核的每个子模块设置约束条件。综合的过程是从底层开始,然后再综合更高层的模块。依次综合直到顶层。,自定向下的综合策略的优点是简单。如果设计划分的合理,模块设计得规范,那么综合工具就可能帮助你进行时序划分,并产生出最优化得结果。自底向上得综合策略,在综合时更快。对那些不明显得时序行为,人工进行时序划分会产生更好得效果。,IP核时序约束,规则:对于IP核基本时序约束和规划的制定,必须在模块划分和RTL代码编写之间完成。这些时序规范需要在设计的过程中定期进行检查,以确保时序规划一直是合理的,设计与规划也是一致的。IP核时序规划中必须明确:时钟定义

4、对所有模块输入信号建立时间要求对所有IP核同步输出端口的时钟沿到输出之间延时的要求通过IP核内所有组合路径产生的输入到输出之间的延时。对输出端口的负载能力要求及对输入端口的驱动能力要求包括温度和电压在内的操作条件不主张IP核内采用纯组合路径的设计方法。因为这样会使综合问题不能局部化,由此引发的问题也难以解决。IP核内的纯组合路径应该给予详细描述。,子模块时序约束,规则:必须为IP核中的每一个子模块制定基本的时间约束和时序规划。子模块时序规划应该在模块划分以后,RTL编码之前完成。在整个设计过程中,还应该不断检查时序规划,确保始终合理、一致。子模块时序规划必须明确:时钟定义线负载模型对所有子模块

5、输入信号建立时间要求对所有子模块同步输出端口的时钟沿到输出之间延时的要求子模块中所有组合路径输入和输出之间的时间延时输出的负载预算和输入的驱动单元包括温度和电压在内的操作条件,设计过程中的综合,开发完成一个IP核中的子模块后,就会对它进行综合。最初的综合是针对某一个工艺进行的,后来,当设计进展到产品阶段,整个核需要面向多个不同的工艺库进行综合,以确保该设计的可移植性。在RTL编码通过基本仿真后,尽早开始进行综合。此时进行的综合可以尽早认识和发现时序上存在的问题。因为,对时序问题的修改通常是通过修改或重构RTL代码实现的。在代码调试完成之前解决这些问题,尽早进行综合,还有利于给时序宽裕的模块增加

6、新功能。在被集成到IP核内之前,子模块应该满足时序规划要求,应该满足功能验证的要求。,子模块综合过程,指南:子模块综合过程包括三个阶段:使用基于时序规划的约束,对子模块进行一次编译对整个子模块执行特征编译,进一步细化时间约束如果有必要,进行下一次迭代。,IP核综合过程,指南:自顶向下的IP核综合过程由两个阶段组成使用顶层IP核约束,对整个IP核执行一次特征编译或时序规划为了达到时序目标,还可以执行其他编译指南:自底向上的IP核综合过程由三个阶段组成:使用基于时序规划的约束,对对每个子模块执行一次编译对整个IP核执行一次特征编译或时序规划,以提高时序和面积综合上的效果。为了达到时序目标,还可以执

7、行其他编译。,线负载模型,线负载模型用于估计单元之间的金属连线负载引起的传输延迟。对于深亚微米设计来说,连线延迟是信号传输延迟的主要因数。所以,建立精确线负载模型是非常重要的。基于模块的物理尺寸大小,可以获得一个统计性的线长。综合工具可通过该输入连接的金属线线长和该输入结点上所有的电容量,确定该输入结点的负载大小。要想获得精确的统计线长,其中最关键的因数是需要精确估计模块在布局、布线后的尺寸大小。通常,核都会被当做一个单独的单元进行布局、布线,其中每个组成该核的子模块会被在单元范围内打平。因此,合适的线负载模型是由整个顶层包含的门数决定。综合子模块时,必须使用整个核的线负载模型,而不仅仅是子模

8、块负载模型。如果只是根据子模块门数确定线负载模型,那么得到的将是一个过于理想的模型,会低估真正的连线延迟模型。,构建时钟和RESET网络,时钟网络最初是不用综合的,依靠物理综合工具,可以向设计中插入一个低时钟偏斜的平衡时钟树。异步RESET网络,在物理综合时,被认为是一个特殊的网络。由物理综合工具将它插入适当的缓冲器。指南:综合时,把时钟和异步RESET网络设置为ideal_net,设置这些网络为set_drive0(无限驱动)Set_ideal_netlistclkrstSet_drive0listclkrst,综合前的代码检查,设计检查工具可以快速检查出许多潜在的问题,包括:设计中的锁存器

9、不可综合的结构,如“=”或initialCase语句中是否隐含了多选或优先级编码器总线上的所有位是否都用到未被使用的核、参数或变量检查综合工具对设计的报告,检查以下内容:是否有时序逻辑被综合成触发器或锁存器是否有同步、异步RESET同时存在是否有未预料到的触发器和锁存器,综合后的代码检查,在综合完成后,综合工具还可以对设计项目进行多方面检查。综合编译器可设置的检查项目如下:组合逻辑环检查。运行report_timing_loops命令,可能检查设计中是否存在组合逻辑环。锁存器检查。运行all_registerslevel_sensitive命令,可以报告出设计中的锁存器。对违反设计规则的检查。

10、运行check_design命令,可以报告单元缺失情况、端口未连接情况和输入端口信号被置于恒高或恒低电平情况。验证可测性。运行check_test命令,验证是否所有寄存器都是可以扫描到的,是否存在任何不可测的结构。软核通常还没有插入扫描寄存器。但是,在芯片最终集成的时候,扫描链将在整个芯片中插入,而不是一块一块地分别插入。验证综合结果。使用等价性检查工具,检查RTL级代码与综合后网表在功能上是否完全等价。,物理综合,随着硅工艺几何特征尺寸的缩小,在预测布局布线后时序时,原有的负载模型变得越来越差。物理综合通过把综合和布局信息结合起来考虑,可以提供IP核在实际芯片中比原来更为准确的性能预测。因此

11、,在IP核正式发布之前,对设计进行物理综合非常必要。对于时序安排要求很高的IP核,提供相应的物理综合信息将有助于集成者在集成该IP核时的物理综合。,经典综合方法,过去,没有人将布图信息也加入综合迭代过程中。也就是说,综合产生的网表中不包括任何布局和布线工具反馈的信息。因此,也没有机会利用布图后的信息来改进综合的效果。当时只有依靠人工去完成综合与布图之间不停的迭代过程。如果设计需要重新综合以遍,那么相应的布图也必须完全重做一遍。对于一个大的设计,这种方法变得不现实了。当前,这种由于缺乏综合和布图之间交互作用而引发的问题越来越严重。随着晶体管和单元电路发展得越来越快,由负载因素导致的时间延迟占整个

12、电路延迟比重也就不断增加。所以,物理布局信息对于综合显得越来越重要。,物理综合,物理综合包括设计中的综合和布局两个阶段。在当今的工艺条件下,布局已经成为预测电路延时的关键信息。对于当前制造工艺中不断增加的布线层,也只有在布局信息确定了之后,布线产生的延时才是可预测的。物理综合的时候,需要设计者提供物理综合约束。当然,也需要时序约束。这些约束包括:IP核的物理尺寸管脚放置位置分组信息网络权重-指出网络中的时序关键路径基于该信息以及设计中的时序约束,物理综合能够通过布局来综合设计,包括放置时钟、复位缓冲器和插入扫描。执行静态时序分析可以位宏设计者提供一个精确的评估。,RAM和数据通路产生器,在可重

13、用设计中,存储器和数据通路的设计面临着一系列特殊问题。历史上,存储器和高性能数据通路都是用物理级方法设计完成的。因此,往往对制造工艺的依赖度非常高。,存储器设计,片上RAM构架的不同在于它们在速度-时序-面积方面的选择不同。基于触发器和锁存器的存储器,一般是那些小块存储器-大约是1000位左右。例如,这类存储器可用做设计32*32的FIFO存储器。这种存储器的优势在于它们可以用RTL级代码描述,因此,它们完全独立于制造工艺,也是完全可重用的。,寄存器堆是一个特殊设计优化的存储器,大约在1K8K位大小范围。它的设计使用专门定制的存储器单元。这种单元比标准单元中的锁存器小,但比真正的存储器单元大。

14、在译码和多选方面,面积开销比较大,但仍小于真正的存储器。寄存器堆常用于实现多端口存储器。例如,用于实现处理器中的寄存器堆。寄存器堆的位单元常常可以根据给定的工艺进行设计。所以,虽然寄存器堆比真正的存储器更容易移植到新工艺上,但还是与工艺密切相关的。,那些大于8K位的存储器都是经过专门优化设计的。位单元阵列占了存储器的主要面积。所以,位单元需要设计得尽可能小。为了达到理想的设计密度,位单元布线时常常违反工艺设计规则。因此,在进行设计规则检查时,需要特殊处理。就译码、选择等方面而言,存储器的固定开销比较大。但是,相对于位单元所占的面积还是小得多。一般的存储器通常包括读-写端口或两读一写端口。有些特

15、殊存储器还可以为具体应用专门定制读写端口。这些高密度的存储器位单元由于使用了预充电和放大等技术,导致内部的时序比较复杂。结果是,它们不仅与工艺密切相关,而且对每一种新工艺都是一种挑战。大多数存储器提供者可以为用户提供多个存储器版本。有的存储器版本是功耗优化,有的是面积优化。寄存器堆和存储器模块与工艺的相关性是可重用设计者需要积极面对的问题。,RAM模块产生过程,设计RAM产生器的方法如下:通过软件的GUI或命令行接口来描述设计中所需的存储器配置。设计者可以选择不同的存储器,通过配置不同功耗、面积和速度参数,使存储器模块满足设计者的需求。利用存储器编译器产生相应的仿真模型和综合模型,另外,还包括

16、相应的物理布图信息。对包含存储器模块的整个系统进行仿真,验证存储器接口功能的正确性。将RAM综合模型和设计中其他部分的RTL代码一起综合。RAM综合模型是决定整个芯片时序和允许对RAM综合模型接口进行逻辑优化的关键。,数据通路设计,数据通路主要决定于设计中的算术功能。例如,一个32位的乘累加器对于计算单元往往是最重要的部分。因此,有必要在版图级用硬件结构设计出一个更快、更小,而且低功耗的乘累加器。,数据通路设计中的问题,用传统方法设计数据通路时,常常会遇到三个主要问题。第一,设计中可能需要采用象华来士树这样的非规则乘法器结构,以提高乘法器性能。第二,设计产生的数据通路对于其他工艺不可移植,因此

17、也是不可重用的。第三,传统方法中,可供选择的数据通路设计方案太少,通常只有那些相对简单和非常规则的结构。,数据通路设计工具的发展,过去,设计者通过手工绘制完成数据通路的设计。首先用原理图的方式描绘出设计的结构信息,然后再开发相应的设计版图部分。物理设计时,先是设计数据通路的单个位片,然后通过复制完成全部设计。对于选择器和加法器组成的规则数据通路,该方法可以实现密集、规则的物理设计。这些手工布图表现出以下优点:高性能。这种方法可以是最有效地利用逻辑的规则结构生产效率低。因为大部分工作需要手工完成。可移植性差。因为设计结果与工艺的关系密切。,最近,使用版图级数据通路设计工具,可以自动完成许多原来需

18、要手工完成的工作。这种设计结果的特点是:对于规则结构可以达到高性能。对于非规则结构,设计性能差。对于不同位宽结构,设计性能差。生产效率中等。可移植性差。,随着对数据通路综合的提高和对设计可移植性的需要,开始更多地使用数据通路综合技术进行设计。数据通路综合时使用生成器产生数据通路元件网表;对于特殊数据通路结构的生成,往往依赖于设计对时序和面积目标的要求。想设计出好的数据通路综合结果,关键是需要一个有着丰富生成器元件的库。高性能:实践出最优的设计高生产率:快速的综合可以使复杂设计更快完成好的可移植性:因为设计与工艺无关,而且还可以参数化配置,所以可以方便地在不同设计之间、不同工艺条件下进行移植。,综合脚本编码指南,规则:所有脚本文件,包括综合脚本,应该以文件描述信息起头,其中必须包括对文件版本历史的描述。规则:应该额外追加注释,以描述所执行的综合策略。规则:所有设计中用到的脚本文件,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论