- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用DC 进行逻辑综合
一.综合流程以及约束的编写:
一般来说,集成电路的设计过程可分为前端设计(front end)和后端设计
(back end)两个阶段。在前端设计阶段,根据用户需求,确定设计所要实现的
功能和时序,并确定出具体的数字逻辑电路(schematic);在后端设计阶段,由
电路逻辑图产生相应的电路版图(layout)。
1.1概述
芯片综合的过程:芯片的规格说明,芯片设计的划分,预布局,RTL 逻辑单元的
综合,各逻辑单元的集成,测试,布局规划,布局布线,最终验证等步骤。设计
流程与思想概述:一个设计从市场需求到实际应用需要用运工程的概念和方法加
以实现,这需要工程人员遵循一定的规则按一定的设计步骤进行操作。下面我们
给出了一个设计工程通常的工作步骤(请参见设计流程图)。从图中可以看出对
一个完整的设计流程来说,可以将工作划分为两个阶段:前段设计和后端设计。
前端工作主要完成IC 与通讯整机设计接口问题,以及整个IC 的内部总体结构设
计;而后端工作则主要是在前段设计的基础上,使用EDA 工具,遵循设计流程,
完成整个IC 设计。
1.1.1 逻辑综合简介
综合就是将设计的原始思想转化为可大规模生产的并可以执行预期功能的
器件这一过程。长期以来,硬件描述语言(HDL)只是用于逻辑验证, 设计者不
得不手工将 HDL 代码转化为逻辑图并且画出组件间的互连线用以产生门级网表。
随着综合工具的改进,这些手工操作渐渐由工具替代了,设计人员可以由工具自
动完成 HDL 代码到门级网表的转化,这项工作就是综合。
设计的抽象层级依次为:原始设计思想、器件的功能描述、设计的行为级
描述、寄存器传输级(RTL)、门级网表、物理设备。
综合的益处有以下几点:可以提高工作效率、代码可复用性(可以通过使
用参数化代码、构建好的逻辑块、重新定位新库等手段达到目的)、可验证性、
可以更加抽象等等。
综合是由约束来驱动的。
①环境属性约束:PVT,线负载模型、模式。
②设计规则约束:面积,扇出,驱动,负载。
③时序约束。
设计流程图
市场调查与产品分析
结构划分和RTL级描述 将时钟树的信息传送给DC
RTL仿真
形式验证(扫描链
和时钟树插入后
逻辑综合,优化
和插入扫描链
全局布线后进
行STA
形式验证(RTL
和门级网表)
时序满足将要求吗
版图设计前的
静态时序分析
详细布线
时序满足要求吗
no
版图设计后进
行STA yes
预布局、布
局、插入时钟
树、全局布线
时序满足将要求吗
no
yes
信号一致性(Sign-off) 将设计备份
综合是基于路径的。
设计编辑器(DC)通过使用静态时序分析来计算设计中各路径的时序。时
序路径的种类有四种:输入到寄存器;寄存器到寄存器;寄存器到输出;输入到
输出
1.1.2 初始化文件及系统保留变量
工艺库一般由ASIC 供应商提供,它必须与DC 兼容以便用DC 进行综合。
单元综合的流程:综合的过程 = 转化 + 优化 + 映射。一般,设计的HDL 源代
码经过转换得到 GTECH 中间代码文件,然后再经过优化和映射两个过程将
GTECH 中间文件转化为工艺库中对应的具体单元。GTECH 中间文件与具体工艺
无关,它只是相当于将 HDL 源代码利用连接库忠实的转换为门级的逻辑连接结
构,如果遇到算符则使用DesignWare 将算术表达式用相应的宏单元代替产生对应
的门级结构。
关键变量的介绍:
1、target_1ibrary变量:是DC中保留的变量,这个变量指定的库是DC用来构建
一个电路的。DC进行映射的几个步骤:设置它让它指向你的生产商提供的库文件。
使用厂家提供的工艺库中的时序数据计算这些门的时序。从target_1ibrary指定
的库中选择功能正确的门。设定目标库使用如下语句: set target _1ibrary
“slow.db”
2、1ink_1ibrary 变量:是用来解析设计参照的。 set link_library “*
slow.db” *号代表 DC 内存,后面接着的是指定的目标库(如果这个变量没有加
入目标库的名字则可能会存在单元不能解析的问题)。link_1ibrary 中指定的工
艺库的名字只与用做参照的单元库有关,在 link_1ibrary 指定的工艺库不是为
了给 DC 做优化判断的。它主要用在综合的转换阶段用以生成 GTECH 中间文件。
target_1ibrary 和 link_1ibrary 的不同:target_1ibrary 指定的工艺库
与设计者让 DC 做优化并与产生最终映射的单元库一致,而 link_library 指定的
库是在 DC 转换阶段用以生成 GTECH 中间文件的。
3、search_path 变量:可以
文档评论(0)