zoukankan      html  css  js  c++  java
  • 关于后仿真的一些探讨

    用syonpsys工具试着研究了一下,也把自己的感悟分享出来,欢迎指正;
       综合用的dc,后仿真用的vcs;
       对于非展平的网表:
            1. 子模块内部的触发器类型,比如时序逻辑reg[7:0] temp;非展平之后,必然存在与之对应的wire[7:0] temp数据类型,并且命名完全相同,连接std cell的连线;
            2. 子模块内部定义的wire类型,全部被工具定义的std cell 线网取代,找不到相同线网的命名;
            3. 模块间的wire数据类型,由于综合保留Hierarchy结构,所以这些线网可以找到,并且完全相同;
            4. 关于后仿真,使用top.u1.u2.temp == 8'd8;类似的内部寄存器变量,不影响仿真,但是不能用子模块内部的wire变量作为事件的触发的条件;因为保留了Hier结构和变量名字,vcs可以正确找到;
        对于展平的网表:
            1. 子模块内部的触发器类型,比如时序逻辑reg[7:0] temp;展平之后,命名会以Hier的形式给出,并且是wire型变量,连接std cell;比如wire [7:0] top_u1_u2_temp(我的理解是,如果其它的子模块也写了reg [7:0] temp,工具不至于展平的时候命名相同);
            2. 子模块内部定义的wire类型,全部被工具定义的std cell 线网取代,找不到相同线网的命名;
            3. 模块间的wire数据类型,尽管展平的网表不具备Hier结构,但是模块间的wire连线,保留了原有的命名;但是不具备Hier属性;
            4. 关于后仿真,必须由Port或者第一级Hier的pin作为触发事件,添加正确激励;像使用top.u1.u2.temp == 8'd8之类的语法,工具无法识别;

  • 相关阅读:
    Leetcode264. Ugly Number II丑数2
    Leetcode221. Maximal Square最大正方形
    223. Rectangle Area
    Leetcode216. Combination Sum III组合总数3
    Leetcode200. Number of Islands岛屿的个数
    Leetcode199. Binary Tree Right Side View二叉树的右视图
    Leetcode179. Largest Number最大数
    从零开始学Linux系统(二)之基本操作指令
    从零开始学Linux系统(四)之Vi/Vim操作指令
    MySQL基础原创笔记(二)
  • 原文地址:https://www.cnblogs.com/godlovepeng/p/10176363.html
Copyright © 2011-2022 走看看