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

  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时间非常久等情况。下一章节再进一步分析。

  • 8
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值