DC综合流程

这篇具有很好参考价值的文章主要介绍了DC综合流程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

引言

逻辑综合分为三个阶段:

  • 转译(Translation):把电路转换为EDA内部数据库,这个数据库跟工艺库是独立无关的;
  • 优化(Optimozation):根据工作频率、面积、功耗来对电路优化,来推断出满足设计指标要求的门级网表;
  • 映射(Mapping):将门级网表映射到晶圆厂给定的工艺库上,最终形成该工艺库对应的门级网表。

在综合的时候,首先 DC 的 HDL compiler 把 HDL 代码转化成 DC 自带的 GTECH 格式,然后 DC 的library compiler 根据标准设计约束(SDC)文件、IP-DW 库、工艺库、图形库、(使用拓扑模式时,还要加入 ICC 生成的 DEF 模式,加载物理布局信息)进行时序优化、数据通路优化、功耗优化(DC 的 power compiler 进行)、测试的综合优化(DC 的 DFT compiler),最后得到优化后的网表。

关键词:DC综合 综合约束 时序报告

概述

DC综合流程
使用DC逻辑综合的流程大致可以分为以下几个部分:

  • 预综合过程(Pre-Synthesis Processes):在综合过程之前的一些为综合做准备的步骤:
    • DC启动;
    • 设置各种库文件:
      • link_library;
      • target_library;
      • symbol_library;
    • 创建启动脚本文件;
    • 读入设计文件;
      • analyze;
      • elaborate;
      • read_file;
    • DC中的设计对象;
    • 各种模块划分;
    • Verilog的编码。
  • 施加设计约束:
    • 设置环境约束:
      • set_operating_coditions;
      • set_wire_load;
      • set_drive;
      • set_driving_cell;
      • set_load;
      • set_fanout_load;
    • 设置时序约束:
      • 设计规则的约束:
        • set_max_transition;
        • set_max_fanout;
        • set_max_capacitance;
      • 优化的约束:
        • create_clock;
        • set_clock_skew;
        • set_input_delay;
        • set_output_delay;
        • set_max_area;
  • 选择编译策略:
    • top down;
    • bottom up;
  • 设计综合;
  • 查看报告;
  • 存储设计数据。

读入设计文件

DC提供了两种命令来读入设计:read 命令和 analyze/elaborate 命令。Synopsys 最初引进了read 命令,随后又有了 analyze/elaborate 命令。较之 read 命令,analyze/elaborate 命令为设计输入提供了一种快速而强有力的方法,因此,推荐 RTL 设计输入使用。

DC 的 read 指令支持多种硬件描述格式,不同模式下读取不同格式文件有以下区别:

  • dc_shell工作模式:读取不同的文件格式只需要带上不同的参数:
    shell read -format verilog[db、vhdl etc.] file
  • tcl工作模式:读取不同的文件格式需要使用不同的命令:
    shell read_db file.db read_verilog file.v read_vhdl file.vhd

同时使用 analyze 和 elaborate 指令:文章来源地址https://www.toymoban.com/news/detail-501490.html

  • analyze:分析 HDL 的源程序并将分析产生的中间文件存于 work(或用户指定)的目录下;
    shell analyze -form

到了这里,关于DC综合流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 自学网络安全的三个必经阶段(含路线图)

    这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护2.0》等 一系列政策/法规/标准的持续落地 ,网络安全行业地位、薪资随之水涨船高。 未来3-5年,是安全行业的黄金发展期,提前踏入行业,能享受行业发展红利。 二、为什么说网络安全行业是

    2024年02月03日
    浏览(44)
  • AMEYA360报道:手机直连卫星通信发展的三个阶段

    卫星通信的发展从过去、现在与规划,可以分为三个阶段。手机卫星通信的第一个阶段中,较为典型的有铱星公司、海事卫星电话、天通卫星通信等,终端设备方面已经可以做到手持设备直接通过自带的天线与卫星进行通信。 包括铱星、天通卫星等,这些系统都是基于专用的

    2024年02月16日
    浏览(44)
  • 同步和异步、同步复位、异步复位、同步释放(Verilog、Verdi、DC综合)

    数字电路根据逻辑功能的不同特点,可以分成两大类:一类叫做组合逻辑电路,简称组合电路或组合逻辑;另一类叫做时序逻辑电路,简称时序电路或时序逻辑。 如果数字电路满足任意时刻的输出仅仅取决于该时刻的输入,那么该数字电路为组合逻辑电路。 相反,如果数字

    2024年02月11日
    浏览(43)
  • 《综合与Design_Compiler》学习笔记——第一章综合综述 第二章verilog语言结构到门级的映射 第三章 使用DC进行综合

    2023.6.25 2023.6.27 和之前学的芯动力mooc中很多内容相似,这篇整理的逻辑更好些 将RTL代码转换到基于工艺库的门级网表。一般分为如下三个步骤。 (1)逻辑级综合 设计被描述成 布尔等式 的形式,触发器、锁存器这样的基本单元采用元件例化(instantiate)的方式表达出来,下面是

    2024年02月12日
    浏览(53)
  • 【Synopsys Bug记录】DC综合报错(显示warning:Unable to resolve reference)

      在综合一个SOC时,发现综合后的门级网表文件缺少了apb系统下的子模块的网表。该SOC已经成功在FPGA上运行了,按理说在设计上是没有问题的。在反复查看综合报告与RTL设计源码后,终于解决了Bug。   查看综合报告,发现以下警告和报错:   首先分析Warning,这个Wa

    2024年01月20日
    浏览(68)
  • java基础入门-21-【阶段综合案例(带权重的随机&每日一记)】

    获取姓氏: https://hanyu.baidu.com/shici/detail?pid=0b2f26d4c0ddb3ee693fdb1137ee1b0dfrom=kg0 男生名字: http://www.haoming8.cn/baobao/10881.html 获取女生名字: http://www.haoming8.cn/baobao/7641.html allnames1.txt Test1

    2024年02月13日
    浏览(54)
  • 【C++历练之路】list的重要接口||底层逻辑的三个封装以及模拟实现

    W...Y的主页 😊 代码仓库分享💕  🍔前言: 在C++的世界中,有一种数据结构,它不仅像一个神奇的瑰宝匣,还像一位能够在数据的海洋中航行的智慧舵手。这就是C++中的list,一个引人入胜的工具,它以一种优雅而强大的方式管理着数据的舞台。想象一下,你有一个能够轻松

    2024年02月04日
    浏览(38)
  • 逻辑综合和SDC约束文件

    综合后的门级网表:综合团队使用标准单元库和约束 standard cell libraries and constraints 对RTL 代码进行综合,并根据可用的标准单元将 RTL 代码转换为门级网表。此文件包含所有设计实例及其连接。 synthesis(综合和物理综合) 把(RTL) Register Transfer Level 转换为 Gate level netlist 综合的

    2024年02月16日
    浏览(39)
  • 第一阶段-第十章 Python基础的综合案例(数据可视化-折线图可视化)

      说明:该文章是学习 黑马程序员 在B站上分享的视频 黑马程序员python教程,8天python从入门到精通 而记录的笔记,笔记来源于本人。 若有侵权,请联系本人删除 。笔记难免可能出现错误或笔误,若读者发现笔记有错误,欢迎在评论里批评指正。此笔记对应的doc文件的百

    2024年02月16日
    浏览(47)
  • 第一阶段-第十一章 Python基础的综合案例(数据可视化-地图可视化)

      说明:该文章是学习 黑马程序员 在B站上分享的视频 黑马程序员python教程,8天python从入门到精通 而记录的笔记,笔记来源于本人。 若有侵权,请联系本人删除 。笔记难免可能出现错误或笔误,若读者发现笔记有错误,欢迎在评论里批评指正。此笔记对应的doc文件的百

    2024年02月16日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包