文章目录

  • 1. 综合基础概念
  • 2. 综合流程
  • 3. 两种综合模型
    • 3.1 线负载模型
    • 3.2 拓扑结构模型
  • 4. 面积、延迟的矛盾
  • 5. 工艺库文件
  • 6. synopsys_dc.setup

1. 综合基础概念

  • 综合:将Verilog、VHDL等语言描述的RTL代码转为使用台积电等代工厂提供的工艺器件描述的网表,在这个过程中综合工具会进行一定逻辑优化。
  • 工艺库:包括逻辑门电路、MUX、buffer、触发器、latch等等,他们具有不同的驱动强度、面积、功耗等物理特性,具体选用哪一种,需要不仅需要RTL,还需要我们进行一定的综合约束,然后DC工具进行逻辑映射,生成网表。
  • 约束:更多是宏观约束,比如时钟频率、器件最大驱动数量,禁用器件等等
  • 输入件:RTL+工艺库+物理库+约束文件
  • 输出件:网表(netlist)与相关rpt(面积、时序等)

2. 综合流程

  • 输入RTL
  • DC将各种类型代码编写的RTL转为一般化的逻辑电路,单纯翻译RTL为GTECH电路(此时没有映射到工艺库,即工艺无关)
  • 读取约束信息
  • 优化,逻辑优化、面积、时序优化、冗余器件删除
  • 映射,使用工艺库中器件完成RTL到网表的映射
  • 生成ddc,包括ddc网表、延迟信息、约束信息等;sdf文件包括延迟信息,用于后仿真

3. 两种综合模型

  • 实际电路的延迟=器件延迟+线延迟

3.1 线负载模型

  • 根据连线所接入的负载来计算线延迟,但是没有考虑连线长度
  • 工艺厂会提供不同规模的线负载模型,百万门级、千万门及等等,实际延迟信息通过已经生产出的电路统计获得。具体选什么需要和厂商沟通确认

3.2 拓扑结构模型

  • 使用脚本提供物理信息,包括电路基本布局等,如IP位置、RAM位置,指导DC进行综合
  • 实际可以使用线负载模型先综合一版本,得到初步的模块布局后,以该布局信息作为第二次拓扑综合的输入进行第二次综合,这样所得的时序、面积信息更为准确。

4. 面积、延迟的矛盾

  • 我们期望,面积小、延迟低。但是这两个是相互制约的因素。综合优先保证时序。
  • 面积越小、流片成本越低
  • 面积大小取决于RTL质量,约束,工艺库等。相同功能需求不同人实现,面积不同,是因为RTL质量不同;约束越紧,需要用到的强驱动器件越多,面积越大;28nm工艺库器件面积>7nm工艺库器件。

5. 工艺库文件

  • 一般以lib后缀的文件是给人看的,同名没有lib的文件是给DC读取的
  • 上图线负载模型的信息,有很多种,每种里面都包括电阻、电容、面积、斜率、fanout信息
  • 上图是一个加法器器件的工艺信息,包括引脚信息,器件功能信息
  • 上图是加法器续表,实际上是多个查找表,根据idx_1/2对values进行索引,idx1/2分别是输入转换时间和扇出负载电容,根据这两个得到延迟信息。

6. synopsys_dc.setup

  • DC设置文件,名称是固定的,DC只认识这个
  • 一般设定路径信息、工艺库等信息
  • -topo运行在拓扑模式
  • | 管道符号,表示将上一步命令的结果交给后面的命令执行
  • tee dc_start.log 将启动时候的打印信息输出到log

DC入门(一)综合基础相关推荐

  1. sql数据库教程百度云_【推荐】零基础水彩画入门教程|零基础水彩教程百度云...

    零基础水彩画入门教程|零基础水彩教程百度云! 照着教程画却总是画不好,这些水彩技法你真的学会了吗? 盲目地照着葫芦画瓢,不懂控制确实很难学会,可以关注一下公众号:每日学绘画,可以领取水彩电子书和全套视 ...

  2. CTF入门指南(0基础)

    ctf入门指南 如何入门?如何组队? capture the flag 夺旗比赛 类型: Web 密码学 pwn 程序的逻辑分析,漏洞利用windows.linux.小型机等 misc 杂项,隐写,数 ...

  3. Python程序设计入门32道基础编程题目与参考代码

    声明 本文仅在CSDN发布,其他均为盗版.请支持正版! 正版链接: https://blog.csdn.net/meenr/article/details/107095894 目录 概述 1.简单数值 ...

  4. Lua快速入门篇(基础概述)(Yanlz+toLua+xLua)

    <Lua热更新> ##<Lua热更新>发布说明: ++++"Lua热更新"开始了,立钻哥哥终于开始此部分的探索了. ++++作为游戏发布迭代的重要技术:Lu ...

  5. 【Python刷题篇】Python从0到入门4|字典复习、函数入门、综合实践

    Python从0到入门3目录 前言 Q1:字典复习-首都 Q2:函数入门-求差 Q3:函数入门-牛牛的朋友 Q4:综合案例:自动售卖饮料机 Q5:综合案例-被8整除的数字 Q6:综合案例-披萨店的订单 ...

  6. 爬虫入门—requests模块基础之药监企业信息爬取

    爬虫入门-requests模块基础之药监企业信息爬取 Author: Labyrinthine Leo   Init_time: 2021.02.22 Key Words: Spider.reques ...

  7. python向量计算库教程_NumPy库入门教程:基础知识总结

    原标题:NumPy库入门教程:基础知识总结 视学算法 | 作者 知乎专栏 | 来源 numpy可以说是 Python运用于人工智能和科学计算的一个重要基础,近段时间恰好学习了numpy,pandas, ...

  8. class括号里的object_Python入门 类class 基础篇

    记住一句话:类是模板,而实例则是根据类创建的对象. 我初学时对类的理解是从类的字面上,可以片面的认为它是一个种类,它是相似特征的抽像,也就是相似的东西,可以把相似特征的事务抽象成一个类.(事务可以是具 ...

  9. python网络爬虫的基本步骤-python爬虫入门需要哪些基础/python 网络爬虫教程

    如何入门 Python 爬虫 入门个吊,放弃 python爬虫入门需要哪些基础 现在之所以有多的小伙伴热衷于爬虫技术,无外乎是因为爬我们做很多事情,比如搜索引擎.采集数据.广告过滤等,以Python为 ...

最新文章

  1. 《Arduino开发实战指南:LabVIEW卷》——3.5 LabVIEW的程序结构
  2. 使用Android Studio新建Project并建立多个module
  3. java 滚动条 滚动_广告条随滚动条的移动而移动
  4. C语言不用文件系统读取文件,C语言-基础教程-非缓冲文件系统
  5. 【转载】ADS分散加载文件使用总结(lpc23xx)
  6. 升级Win11正式版啦!这优化神了,界面不输苹果,速度飞快让人秒弃Win10!
  7. android用kotlin制作计算器,使用Kotlin做一个简单计算器
  8. win8、win10如何修改文件夹的权限
  9. 力扣203,移除链表元素(JavaScript)
  10. HDU 1422 重温世界杯 环形序列的最长非负连续子序列
  11. 16进制 dat matlab_MATLAB中的常量与变量
  12. ibase4j使用信息心得
  13. python 小说分析_谁还没看过几本金庸小说?用Python分析一下当年最爱看的主角是谁...
  14. 3款好用的文件管理软件
  15. 最新的QQ跳转支付宝并自动领红包脚本。
  16. PCL1.9.1下载与配置+Visual Studio2017
  17. 【用户画像】功能实现值写入ClickHouse人群包、预估和更新分群人数,NoSQL数据库介绍
  18. hdu2197 本源串
  19. 修改mysql8.0中数据库的名字
  20. 大数据产品研究 - Presto简介

热门文章

  1. 算力网络中基于算力标识的算力服务需求匹配
  2. 当当网1000本同类别图书价格对比:matplotlib基本使用,plot-线段,bar-条形图,pie-饼图
  3. 从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,输入为0时结束程序
  4. python 小学数学,一个小学的数学题
  5. 【渝粤教育】电大中专Office办公软件 (14)作业 题库
  6. gitblit中忘记admin密码,怎么办?附详细解决方法和截图
  7. 从键盘输入一个年份和月份,输出该月有多少天(考虑闰年, 闰年的条件是:(1)能被4整除,并且不能被100整除;(2)能被400整除)。
  8. spring-环绕通知 @Around
  9. 一份颠覆小米魅族的营销计划
  10. 如何高效设计游戏——增强游戏体验游戏背景音乐无缝循环