LEC/FORMAL --- PARTII 流程介绍
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
set read desige rule and save logs name。如下所示,为针对读取design时候设定的一些rule,还未到真正的setup mode下的一些设置。可以看到下面红字的内容,vpxmode和tclmode对应,相应的命令设置用“ ”空格,而不是“_”下划线。工具中可以自主切换。
SETUP mode — Read design,elaborate and read lib
如下所示为读对应的lib库,设定相应的design top,分别读入godel 和revised design然后进行elab,并设置root module
SETUP mode — Specify design constraints。
下图所示,指定了godel和revised design的map rule,指定对应map类型。
对于有吃upf的综合,在做lec时候需要读入相应的upf file,针对插入的特殊cell进行匹配
SETUP mode — Specify flatten model通过一些特殊的model设定,让lec 过程更加顺畅,增加pass几率。虽然工具已经按照人的思想进行了操作,但是终究有一些特殊的点。比如由于在综合过程中,可能会增加latch,可能由于综合造成的时序冗余逻辑,可能reg的D端口为1时候综合会被优化掉,可能由于transparent latch,可能由于sequential merge等等问题,都会导致lec不过。
SETUP mode — Option before lec mode
在lec mode之前,设置map method以及对于compare过程中针对abort的处理方式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. 需求分析 在黑马头条的小智同学板块实现聊天机器人,能够起到智能客服的效果,能够为使用app的用户解决基础的问题,而不用额外的人力. 但是由于语料的限制,所以这里使 ...
- 微信小程序开发的完整流程介绍,新手必读
自从跳一跳小程序游戏出现后,一夜之间,小程序就变得家喻户晓了,功能开发也越来越丰富,在微信搜一搜就会发现许多大品牌早已有自己的小程序了,越来越多的企业和商家都看中了这个风口,想快速开发出一款属于自己的 ...
- sqlyog设置自动补全_sqlyog智能提示如何设置?sqlyog智能提示设置流程介绍
sqlyog智能提示如何设置?sqlyog智能提示设置流程介绍 更新时间:2019-08-12 作者:cc 最近不少朋友表示还不会设置sqlyog智能提示,使用下面小编就带来sqlyog智能提示设置的 ...
- Industry AI Live | 行为动作定位的算法流程介绍与分享
「Industry AI Live」是 biendata 与人工智能媒体 PaperWeekly 共同发起的学术直播栏目,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一 ...
- ARKit从入门到精通(2)-ARKit工作原理及流程介绍
转载请注明出处:ARKit从入门到精通(2)-ARKit工作原理及流程介绍 1.1-写在前面的话 1.2-ARKit与SceneKit的关系 1.3-ARKit工作原理 1.3.1-ARSCNView ...
- 对于SAP的月结相关流程介绍
对于SAP的月结相关流程介绍 流程描述 FI期末结帐流程包括应收帐款.应付帐款.固定资产.管理会计结帐.总帐结帐等一系列结帐过程,对于年结增加了余额结转及固定资产年度改变等动作,通过月结及年结处理,出 ...
- (2)FPGA开发流程介绍(第1天)
(2)FPGA开发流程介绍(第1天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA开发流程介绍(第1天) 5)技术交流 6)参考资料 2 FPGA初级课 ...
- 中兴bsc服务器是什么,中兴BSC内部信令流程介绍
中兴BSC内部信令流程介绍 中兴BSC内部信令流程介绍(BSC V2版本) 发布人:网络部_许治远 发表时间:2008-11-15 得分:0.50 归属团队:交换维护中心 分类:交换类 来源:独立原创 ...
- 死亡搁浅运送系统服务器,死亡搁浅订单23寻物系统服务器流程介绍-死亡搁浅订单23寻物系统服务器怎么做_牛游戏网...
在<死亡搁浅>这款送快递游戏中,我们会接到各种难易不同的订单,可能很多玩家对于要怎么完成这些订单不是很了解,所以小编这次就为大家带来了<死亡搁浅>订单23.寻物:系统服务器流程 ...
最新文章
- 支持向量机(SVM)的约束和无约束优化、理论和实现
- 好的 blog 整理
- new和delete底层解析
- 13个初中级Python程序员练习的项目开发实战
- 逆元~(乘法逆元及其应用)
- 【机器学习】机器学习神器Scikit-Learn保姆级入门教程
- linux 基础命令总结
- java类中声明log对象_用于Android环境,java环境的log打印,可打印任何类型数据
- 智能循迹避障小车C语言程序编写思路,基于单片机的智能小车红外避障循迹系统设计与制作...
- 2018年最佳Linux服务器发行版
- 基于OpencCV的彩色图像的分离与合并
- mount的api使用笔记
- 输入一个日期,计算这个日期与 2018-03-12差多少天;
- CCF201712-5 商路(60分题解链接)
- Threejs javascript 3D建模 框架
- 写PHP还是Zend好用
- ThinkPad SL400 改装Win2003方法以及驱动下载列表
- 公众号平台服务号、订阅号、企业号区别
- 【Unity面试】 NGUI优化和UGUI优化 | 面试真题 | UI框架 | 全面总结 |建议收藏
- 深度优先搜索--不撞南墙不回头
热门文章
- 与传统存储相比,安防云存储主要有哪些优势
- OTU and FlexO multiframe alignment
- java wait notifyall_Java中的wait/notify/notifyAll
- TFT LCD相关概念
- ▩Dart-库概述‘dart:convert’
- 从MicroPython到TPYBoard 萝卜教育引领青少年学科式编程新标杆
- JAVA8中forEach不能使用break和continue跳出循环用Rerun
- 常系数齐次线性微分方程
- 一文了解什么是元宇宙
- pic单片机c语言乘除法,PIC单片机C语言编程教程(1)