Floorplan:

要做好floorplan需要掌握哪些知识跟技能?

通常,遇到floorplan问题,大致的debug步骤跟方法有哪些?

如何衡量floorplan的QA?

T:Block level的floorplan最重要的就是size和timing。首先需要研究macro之间的data flow,可以根据这个信息摆一个大致的floorplan,尽量的减少线长,算好macro之间所需要的间距,调整好pin的朝向。在PG都打好之后,可以简单粗暴一步不漏地从头跑到尾来衡量block size等是否合理。其次需要考虑timing的问题,对于某些高要求的block,需要通过place timing result反过来调整floorplan会有很多fp/place之间的来回,并且还需要通过 bound, group, preplace 等手段去人工干预工具的结果。

top level的floorplan需要对全局有把控,跟 package, IP, PAD, foundary 等有很多互动,需要跟前端和供应商不停的沟通review看spec等,对知识面要求很广。在这些基础上还要控制芯片的面积,feasibility,电源网等,并根据个block之间的 data flow, timing紧密程度和block的可行性来进行partition。

P:FP的形状最好规则,size能满足density的需求,power是ir 和resource的综合考虑。mem和io的摆放是基于对design数据流的理解。Innovus fp的gui界面特别好用应该是公认的。checkFplan应该可以报出所有于row, track相关的问题

A:Floorplan需要会操作gui界面,memory,ip都需要摆。QA需要做try run看看timing, congestion好不好。

Placement:

要做好placement需要掌握哪些知识跟技能?

通常,遇到placement问题,大致的debug步骤跟方法有哪些?

如何衡量placement的QA?

T:placement需要考虑的是timing,power,congestion。

基本上就是通过timing result以及各种分步reports和之后步骤的结果来分析QA,从而决定是否需要通过bound, group, preplace等人工手段去干预,或者做logic调整,禁用某些cell,更改工具流程等等。

P:place 主要考虑timing, overflow,好的place应该是critical的path放的尽量集中且没有overflow的问题。Innovus的优势在于skp,同时考虑timing, overflow和wirelength。

A:place需要会在ideal clock情况调整脚本,可能会用到useful skew调整来控制congestion,同时meet timing。

CTS:

要做好CTS需要掌握哪些知识跟技能?

通常,遇到CTS问题,大致的debug步骤跟方法有哪些?

如何衡量CTS的QA?

T:低要求的只要后期timing可以收敛,直接跑脚本就可以。

高要求的在做之前要理顺clocktree结构,仔细看工具log, clock report,查看treelevel, design rule, skew。有选择地使用clockcell, target design rule尽量把tree做短。在对clock tree和工具熟悉的基础上甚至可以单独准备一个cts sdc以及平衡tree在不同corner之间的长度功耗等。

在把握住以上的要求后,进一步使用后续步骤的hold, setup timing去反过来检查tree的质量。

P:cts主要看clk tree的skew, slew和latency。innovus的ccopt有强大的chain based useful skew的能力,在得到最好的timing的同时实现这三个目标。

A:cts要知道如何看clock tree结构,如何利用工具把tree按照sdc的要求实现。

Route:

要做好Route需要掌握哪些知识跟技能?

通常,遇到Route问题,大致的debug步骤跟方法有哪些?

如何衡量Route的QA?

T:route这一步随着工艺的进步xtalk效应越来越严重,xtalk在绕线之前基本很难衡量,往往在绕线后会引起时序不收敛和runtime的增长,在极端情况下有可能会引起block的面积增长。

route的问题需要仔细去排查PR工具的drc report,一般需要注意short, total drc, drc type.

P:route首先要保证能route通没有drc,然后就是route前后的timing尽量一致,innovus的global Route和detail Route均是timing driving的,能很好满足以上两点。

A:Route要知道如何调整工具把design route通的前提下提升yield,主要是double via或dfm via的ratio

DRC:

要做好DRC需要掌握哪些知识跟技能?

通常,遇到DRC问题,大致的debug步骤跟方法有哪些?

如何衡量DRC的QA?

T:低要求的基本只要看到某些常见的drc violations知道怎么修就可以了。

高要求的则需要对foundary不同工艺的rule file和工具的tech file有一定的了解以及对layout有一定的概念。通过这些知识在PR初期可以预见和规避掉一些潜在致命的drc错(比如base layer或部分metal Layer的错)。此外还可以人肉过滤PR工具里的drc report, 高效率的找到可能的root cause及相应的workaround.

A:DRC要会把出现的问题分类,是base layer还是Metal layer,同时确定是routing可修还是要动cell位置,甚至需要再调整floorplan。

P & R 8的更多相关文章

  1. [原]CentOS7安装Rancher2.1并部署kubernetes (二)---部署kubernetes

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  2. 利用python进行数据分析2_数据采集与操作

    txt_filename = './files/python_baidu.txt' # 打开文件 file_obj = open(txt_filename, 'r', encoding='utf-8' ...

  3. Django项目:CRM(客户关系管理系统)--81--71PerfectCRM实现CRM项目首页

    {#portal.html#} {## ————————46PerfectCRM实现登陆后页面才能访问————————#} {#{% extends 'king_admin/table_index.h ...

  4. 【翻译】Awesome R资源大全中文版来了,全球最火的R工具包一网打尽,超过300+工具,还在等什么?

    0.前言 虽然很早就知道R被微软收购,也很早知道R在统计分析处理方面很强大,开始一直没有行动过...直到 直到12月初在微软技术大会,看到我软的工程师演示R的使用,我就震惊了,然后最近在网上到处了解和 ...

  5. 应用r.js来优化你的前端

    r.js是requireJS的优化(Optimizer)工具,可以实现前端文件的压缩与合并,在requireJS异步按需加载的基础上进一步提供前端优化,减小前端文件大小.减少对服务器的文件请求.要使用 ...

  6. 使用R画地图数据

    用R画地图数据 首先,从这里下载中国地图的GIS数据,这是一个压缩包,完全解压后包含三个文件(bou2_4p.dbf.bou2_4p.shp和bou2_4p.shx),将这三个文件解压到同一个目录下. ...

  7. c#使用Split分割换行符 \r\n

    c# 使用Split分割 换行符,方法如下(其余方法有空再添加):   string str = "aa" + "\r\n" + "bb"; ...

  8. JAVA调用R

    JAVA很适合开发应用系统,但是数学建模和计算能力非其所长,如果该系统需要进行大量的统计或者优化的计算,调用R是一种很好的方式.JAVA负责系统的构建,R用来做运算引擎,从而实现应用型和分析性相结合的 ...

  9. Windows Form调用R进行绘图并显示

    R软件功能非常强大,可以很好的进行各类统计,并能输出图形.下面介绍一种R语言和C#进行通信的方法,并将R绘图结果显示到WinForm UI界面上. 1 前提准备 安装R软件,需要安装32位的R软件,6 ...

  10. react-native Simulator com+r不能刷新模拟器

    这个问题是我按了com + shift + K 调出Simulatior 的时候出现的, 然后虚拟机就刷新不了了, 怎么按com+r都不好使. 在Simulatior的菜单栏选择Hardware -- ...

随机推荐

  1. 树莓派操作案例1-使用python GPIO+TB6612驱动步进电机

    原理图: 接口说明 A控制信号输入------PWMA               VM ------电机驱动电压输入端(4.5V-15V) A电机输入端2 ------AIN2           ...

  2. X shell安装 以及使用

    X shell 百度搜索 X shell 然后下载软件 然后会进入主页面

  3. 线段树的树状数组大小为什么是4*maxn

    以下方建树代码为例,r数组表述原始数据,t表述tree也就是树状数组 void make(int left,int right,int num)//创建线段树 { t[num].l=left; t[n ...

  4. 虚拟路径引起的bug

    之前,遇到一个问题,就是,项目访问不了最新产生的pdf文件. 百思不得其解,为什么,返回 idea 页面就可以访问了(真的只是返回 idea 页面,不进行其他什么的操作).一直以为是热部署的问题 后来 ...

  5. (转)Boyer-Moore算法

    转自:Boyer-Moore算法 一.简述 在当前用于查找子字符串的算法中,BM(Boyer-Moore)算法是当前有效且应用比较广的一中算法,各种文本编辑器的“查找”功能(Ctrl+F),大多采用B ...

  6. springmvc 整合 redis

    引入依赖 <!--redis--> <dependency> <groupId>redis.clients</groupId> <artifact ...

  7. 三分钟快速上手TensorFlow 2.0 (下)——模型的部署 、大规模训练、加速

    前文:三分钟快速上手TensorFlow 2.0 (中)——常用模块和模型的部署 TensorFlow 模型导出 使用 SavedModel 完整导出模型 不仅包含参数的权值,还包含计算的流程(即计算 ...

  8. UIgradients – 美丽的UI渐变色分享站 并可转成CSS代码

    前期我们分享了「如何使用彩色滤镜创造奇妙的网页设计」这篇文章,通过渐变彩色滤镜实现很多漂亮的效果,然而用什么渐变颜色才好呢?可以看看今天为大家分享的 UIgradients 渐变色分享网站,里面有很多 ...

  9. AAC DRC

    DRC feature 在AAC decoder是optional.DRC info是在编码在fill element. Program reference level是进行DRC的一个参考值.是原始 ...

  10. HTML5学习(2)语义化

    什么是语义化? 1.每一个HTML元素都有具体的含义,例: a元素:超链接,p元素:段落 2.所有的元素与展示效果无关 元素内容展示到页面中的效果,应该由CSS决定. 因为浏览器带有默认的CSS样式, ...