LEC:lec(logic equivalence checking)又叫formal check,是对ic design的综合,PR前后的设计进行逻辑对比检查的工具/手段,保证综合不改变rtl原始的logic function。目前用的较多的就是C家的formal工具。接下来介绍一下lec的流程,关于原理介绍,见上一个章节。

1. 概要

如下图所示,LEC过程主要分为两个大步骤:
第一步,setup阶段,设定相应的rules,然后读入lib和designs
第二部,lec 阶段,Map然后compare,有问题debug
正如在上面的两个步骤所示,lec也有两个mode ,setup相关的设定只能在setup mode下进行,而map和compare只能在lec mode下进行。
接下来将会详细讲解相关flow。

2. 详细flow

  1. set read desige rule and save logs name。如下所示,为针对读取design时候设定的一些rule,还未到真正的setup mode下的一些设置。可以看到下面红字的内容,vpxmode和tclmode对应,相应的命令设置用“ ”空格,而不是“_”下划线。工具中可以自主切换。

  2. SETUP mode — Read design,elaborate and read lib
    如下所示为读对应的lib库,设定相应的design top,分别读入godel 和revised design然后进行elab,并设置root module

  3. SETUP mode — Specify design constraints。
    下图所示,指定了godel和revised design的map rule,指定对应map类型。

对于有吃upf的综合,在做lec时候需要读入相应的upf file,针对插入的特殊cell进行匹配

  1. SETUP mode — Specify flatten model通过一些特殊的model设定,让lec 过程更加顺畅,增加pass几率。虽然工具已经按照人的思想进行了操作,但是终究有一些特殊的点。比如由于在综合过程中,可能会增加latch,可能由于综合造成的时序冗余逻辑,可能reg的D端口为1时候综合会被优化掉,可能由于transparent latch,可能由于sequential merge等等问题,都会导致lec不过。

  2. SETUP mode — Option before lec mode
    在lec mode之前,设置map method以及对于compare过程中针对abort的处理方式

  3. Lec mode — map and compare
    从setup mode进入tcl mode,开始add map points然后进行compare

    至此,整个的lec的整体流程大致讨论完毕,如果没有non_equential或者not mapped,那我们的lec就是pass了,而如果有的话,就需要进行debug了。关于lec fail的debug内容也比较多,有关于unmapped,non_equential, abort或者lec时间非常久等情况。下一章节再进一步分析。

LEC/FORMAL --- PARTII 流程介绍相关推荐

  1. 聊天机器人之需求分析和流程介绍

    聊天机器人之需求分析和流程介绍 1. 需求分析 在黑马头条的小智同学板块实现聊天机器人,能够起到智能客服的效果,能够为使用app的用户解决基础的问题,而不用额外的人力. 但是由于语料的限制,所以这里使 ...

  2. 微信小程序开发的完整流程介绍,新手必读

    自从跳一跳小程序游戏出现后,一夜之间,小程序就变得家喻户晓了,功能开发也越来越丰富,在微信搜一搜就会发现许多大品牌早已有自己的小程序了,越来越多的企业和商家都看中了这个风口,想快速开发出一款属于自己的 ...

  3. sqlyog设置自动补全_sqlyog智能提示如何设置?sqlyog智能提示设置流程介绍

    sqlyog智能提示如何设置?sqlyog智能提示设置流程介绍 更新时间:2019-08-12 作者:cc 最近不少朋友表示还不会设置sqlyog智能提示,使用下面小编就带来sqlyog智能提示设置的 ...

  4. Industry AI Live | 行为动作定位的算法流程介绍与分享

    「Industry AI Live」是 biendata 与人工智能媒体 PaperWeekly 共同发起的学术直播栏目,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一 ...

  5. ARKit从入门到精通(2)-ARKit工作原理及流程介绍

    转载请注明出处:ARKit从入门到精通(2)-ARKit工作原理及流程介绍 1.1-写在前面的话 1.2-ARKit与SceneKit的关系 1.3-ARKit工作原理 1.3.1-ARSCNView ...

  6. 对于SAP的月结相关流程介绍

    对于SAP的月结相关流程介绍 流程描述 FI期末结帐流程包括应收帐款.应付帐款.固定资产.管理会计结帐.总帐结帐等一系列结帐过程,对于年结增加了余额结转及固定资产年度改变等动作,通过月结及年结处理,出 ...

  7. (2)FPGA开发流程介绍(第1天)

    (2)FPGA开发流程介绍(第1天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA开发流程介绍(第1天) 5)技术交流 6)参考资料 2 FPGA初级课 ...

  8. 中兴bsc服务器是什么,中兴BSC内部信令流程介绍

    中兴BSC内部信令流程介绍 中兴BSC内部信令流程介绍(BSC V2版本) 发布人:网络部_许治远 发表时间:2008-11-15 得分:0.50 归属团队:交换维护中心 分类:交换类 来源:独立原创 ...

  9. 死亡搁浅运送系统服务器,死亡搁浅订单23寻物系统服务器流程介绍-死亡搁浅订单23寻物系统服务器怎么做_牛游戏网...

    在<死亡搁浅>这款送快递游戏中,我们会接到各种难易不同的订单,可能很多玩家对于要怎么完成这些订单不是很了解,所以小编这次就为大家带来了<死亡搁浅>订单23.寻物:系统服务器流程 ...

最新文章

  1. 支持向量机(SVM)的约束和无约束优化、理论和实现
  2. 好的 blog 整理
  3. new和delete底层解析
  4. 13个初中级Python程序员练习的项目开发实战
  5. 逆元~(乘法逆元及其应用)
  6. 【机器学习】机器学习神器Scikit-Learn保姆级入门教程
  7. linux 基础命令总结
  8. java类中声明log对象_用于Android环境,java环境的log打印,可打印任何类型数据
  9. 智能循迹避障小车C语言程序编写思路,基于单片机的智能小车红外避障循迹系统设计与制作...
  10. 2018年最佳Linux服务器发行版
  11. 基于OpencCV的彩色图像的分离与合并
  12. mount的api使用笔记
  13. 输入一个日期,计算这个日期与 2018-03-12差多少天;
  14. CCF201712-5 商路(60分题解链接)
  15. Threejs javascript 3D建模 框架
  16. 写PHP还是Zend好用
  17. ThinkPad SL400 改装Win2003方法以及驱动下载列表
  18. 公众号平台服务号、订阅号、企业号区别
  19. 【Unity面试】 NGUI优化和UGUI优化 | 面试真题 | UI框架 | 全面总结 |建议收藏
  20. 深度优先搜索--不撞南墙不回头

热门文章

  1. 与传统存储相比,安防云存储主要有哪些优势
  2. OTU and FlexO multiframe alignment
  3. java wait notifyall_Java中的wait/notify/notifyAll
  4. TFT LCD相关概念
  5. ▩Dart-库概述‘dart:convert’
  6. 从MicroPython到TPYBoard 萝卜教育引领青少年学科式编程新标杆
  7. JAVA8中forEach不能使用break和continue跳出循环用Rerun
  8. 常系数齐次线性微分方程
  9. 一文了解什么是元宇宙
  10. pic单片机c语言乘除法,PIC单片机C语言编程教程(1)