IC技术圈期刊 文章分类

类别: FPGA(364) 前端(228) 验证(168) 后端(128) 嵌入式(9) 自动化(21) 模拟(23) 求职就业(163) 管理(11) 软件(26) 按月份
数字后端面试高频问题
#后端  #数字IC  #后端  #求职  #面试  #芯片物理设计 
数字后端相比于前端门槛较高,但知识技能树非常清晰,包括:data setup、floorplan、placement、cts、routing、DFM、DRC/LVS、ECO等。本公众号推出的专题——“后端面试高频问题”分模块对数字芯片物理设计相关知识点进行了整理,以帮助大家轻松应对数字后端的笔面试。
数字IC剑指offer
标准单元库高度选择
#后端 
标准单元库的选择非常重要,选择一套适合的库,对于芯片时序收敛,物理收敛,以及最终芯片的PPA
白话IC
最简timing signoff checklist
#后端 signoff 
今天我们聊一下timing signoff需要检查哪些内容。列一个最简单的check list。
白话IC
芯片ECO(一)
#后端  #ECO 
ECO通常包含timing ECO,function ECO,我们本节看看timing ECO。timing ECO通常先将PD设计加载到tempus进行timing signoff分析,通过eco_opt_design等命令fix remaining timing violations,并产生ECO脚本,在innovus中执行ECO脚本后,QRC提取寄生参数, 再次进行tempus时序分析。
全栈芯片工程师
数字IC设计知识结构
#前端  #数字IC知识结构  #前端  #后端  #验证 
IC 定义,芯片各个节点分工,数字IC设计全流程:前端设计 、物理实现 和功能验证,总结知识结构。
FPGA自习室
EDA工具里的功耗分析方法
#后端  #功耗 
优化一定是建立在计算和数据的基础上的,那么对于EDA而言,功耗是怎么算出来的呢?今天,就让小编带领大家一起从EDA的视角,来洞察功耗计算的零零总总。
艾思后端实现
【Innovus】总结了十条消除DRC和Antenna的方法
#后端  #Innovus  #DRC  #Antenna 
有时候APR工具并不是那么智能,需要人工干预才能达到满意的效果。本文总结了工作中遇到的Route后DRC、Antenna等问题的几个解决方法。
ExASIC
spef反标没成功,这种情况你肯定没遇到过
#后端 starrc Primetime 
最近遇到了一个spef没有反标成功的案例。首先确认netlist和spef是基于同一套数据产生的,一致性没有问题。其次确认了这些没有反标上的net,都有实际的绕线。这就奇怪了,很多线没有反标上。
白话IC
台积电的工艺好在哪里?
#后端 
比较台积电与umc的工艺
白话IC
【资料库】数字ic前端后端验证
#前端  #资料库  #前端  #后端  #验证 
分享一些从网上搜集的数字ic前端后端验证学习资料,内含UVM学习、版图实训、电路设计、Verilog RTL实践、VCS学习、SRAM、Perl、DFT了解,以及一些经验之类的分享
电子狂人
IC后端选择tech file容易忽略的一件事
#后端 
以前曾经提到,对于一些标准单元库,调整track是对绕线有好处的,甚至说是非常关键,决定着你的设计是否能够绕通。
白话IC
两种io约束方式对于后端的影响
#后端 
众所周知,block的port接口部分的约束,我们是通过set_input_delay set_output_delay来实现的。在约束的时候,我们通常会遇到两种方式,一种是通过创建virtual clock,另外一种是通过真实的clock来进行约束。
白话IC
【Innovus】做postmask功能ECO需要分几步
#后端  #postmaskeco  #eco 
一般Postmask功能ECO流程分成以下几步:修改RTL和验证、修改网表(LEC)、后端工具里ECO Route。因为是postmask,所以不能加减stdcell,但可以用spare cells来映射。今天重点来介绍在Innovus里实现ECO Route需要怎么操作。
ExASIC
芯片片上SRAM存储概略及生成使用实践 (中)
#后端  #SRAM  #DFT  #MBIST $MBISR 
SRAM的除过主要的memory array意外,还可以包含可更多可测性的支持和扩展
艾思后端实现
用Python解决Verilog网表转CDL大小写重名的问题
#自动化  #python  #后端 
在用calibre v2lvs把APR网表转CDL时是不是经常遇到下图的情况?这是CDL不区分大小写的原因。最常见的解决方法就是写脚本替换。我们注意到log里warning非常有规律:Duplicate port/net name "xxx" found in module "xxx",这样我们可以用正则提取net和module名字。
ExASIC
用Python写一个stdcell library的parser
#自动化  #python  #后端 
用正则写一个简单的stdcell library的parser。对于多行的文本,设置标志位,在区间里进行正则匹配,可以提高准确性和效率。
ExASIC
用Python提取Verilog网表层次和实例化关系
#自动化  #python  #后端 
我们知道Verilog网表文件很大,小的也有几十M、几百M,但Verilog网表没有形为级描述,只剩下stdcell和macro的实例化。本文用python正则实现了网表实例化关系提取。总结:正则不难,难的是善于总结和灵活应用。定义合理的数据存储结构也是非常重要的,后续操作会简便很多。
ExASIC
与门变或门,或门变与门
#前端  #后端 
掌握常见逻辑门的等价变换是手工做网表ECO重要技能。比如,与门和或门的互换、与/或跟选择器的互换、DFF的SET和RESET互换、DFF上升沿和下降沿的互换等。下面介绍与门和或门的互换方法。
ExASIC
写不好的SDC约束
#后端  #综合  #sdc约束 
sdc约束中的不常见问题记录一下
数字IC小站
【innovus】大小写重名的终极解决方法
#后端  #innovus 
其实innovus也有一个命令类似dc的change_names,叫update_names。
ExASIC
ARM Cortex-A7时钟树综合实战分析
#后端  #时钟树综合  #后端实战 
吾爱IC社区是一个专业技术交流和分享数字IC设计与实现技术与经验的高端技术交流社区,目前社区高端已经拥有近1500位高级会员。
吾爱IC社区
时序电路为什么综合成了latch
#后端  #综合  #latch 
有群友提问,下面的代码为什么在DC里可以综合成DFF,而在FPGA上却综合成了latch。这篇文章为您慢慢道来。
ExASIC
如何做出更有竞争力的芯片?
#后端 
芯片设计,某种程度上越来越同质化,如何和竞争对手拉开差距?
白话IC
手把手教你修复Calibre DRC Violation
#后端  #Calibre  #DRC 
手把手教你修复Calibre DRC Violation(训练营学员案例)
吾爱IC社区
从Spice到Lib,然后从Lib到Lib
#后端  #PnR  #liberty 
liberty是从模拟世界到数字世界的其中一把钥匙,本文简单介绍K库工具及其使用。
RTL2GDS
ICC/ICC2 or INN 一点不成熟的浅见
#后端  #ICC  #ICC2  #INNOVUS 
对于ICC/ICC2 和INNOVUS一些浅显的理解
艾思后端实现
中端设计在IC开发中的价值和思考
#后端  #Synthesis  #middle-end 
IC设计中 中端设计的重要性 日渐明显
艾思后端实现
芯片设计里的Multi-Bit FF探究
#后端  #Multi-bit 
使用MBIT 完成芯片设计,助力PPA再上一层高度
艾思后端实现
用python实现分模块按cell类型统计cell个数并降序排列
#自动化  #python  #后端 
有同学想看看综合网表里某模块里and、or、inv等cell的个数,谁最多谁最少。虽然用dc的各种命令组合也可以实现,但今天我们用python来实现。
ExASIC
用python实现网表分模块统计面积
#自动化  #python  #后端 
虽然dc也有report_area -hier命令来报告各级模块的面积,本python方案看似有点造轮子,但还是有一定的便利性。一、不受网表类型的限制,综合网表、DFT网表、APR都可以。二、可以过滤面积小于指定值的小模块,比如工具自动插入的ICG模块。三、还可以根据面积占比做排序,方便分析面积的瓶颈。
ExASIC
IR Drop 对芯片性能及功能的影响
#后端 
纳米级尺寸工艺IR Drop 对芯片性能及功能的影响不容忽视。
小蔡读书
【Innovus】记录后端的一些小心得
#后端  #innovus 
分享innovus的使用经验,一些细节不注意可能会出大问题
ExASIC
我们击败了著名设计服务公司。一片悲观中,机会在这里。
#后端 
可能未来口碑比较好,技术水平过硬的工程师,真有可能不再依赖于所在公司的名气,而是靠个人的名气来吸引客户。
白话IC
逻辑综合的流程和命令
#后端  #综合 
综合就是把Verilog、VHDL转换成网表的过程。综合按照是否考虑物理布局信息可分为逻辑综合和物理综合。逻辑综合通常用来做工艺较老的项目,或者较新工艺的面积和时序的评估。因此,前端设计工程师掌握逻辑综合的流程和相关EDA工具是必须的技能,可用来评估和提升设计代码的质量。
ExASIC
【innovus】fab回复说“我们不提供ict/captable”
#后端  #innovus 
本文介绍了tluplus转captable的方法和注意事项。
ExASIC
修timing violation的二十一种方法
#后端  #STA  #sign-off 
修timing的方法一网打尽。
志芯
OCV的来龙去脉
#后端  #OCV 
OCV就是制造工艺各环节引起的偏差。
志芯
为什么要做low power check
#后端  #UPF  #low power check 
一是检查low power constrain,二是检查low power可能引入的逻辑错误。
志芯
浅谈MOS管中的寄生电容
#后端  #寄生电容 
进入深亚微米工艺,寄生电容成为影响器件性能的重要因素。
志芯
什么是AOCV、POCV和LVF
#后端  #STA  #OCV 
不同的OCV是基于不同的数学模型对cell delay的统计学迫近。
志芯
捏了一把冷汗!原来Aon buffer要这么处理(附社区福利活动)
#后端  #AON Buffer  #Secondary PG 
Aon buffer的摆放及其secondary pg pin连接的那些signoff检查
吾爱IC社区
后端sign off review中的几个问题
#后端  #sign off  #review 
关于后端review中几个不太常见问题的思考。
志芯
关于hierarchical design的upf file的一些思考
#后端  #UPF  #low power 
hierarchical design的upf要重点考虑IO的处理、模块间chain和控制信号的交互、以及power plan的对齐。
志芯
反相器的物理库和前端RTL设计
#后端  #库设计 
以反向器为入口,了解库设计。
志芯
lef文件生成和内容介绍
#后端  #库设计 
以反相器为入口,了解lef文件。
志芯
深入研究计算绕线寄生RC参数和绕线delay的数学模型
#后端  #RC抽取 
你有没有感觉做设计的时候,似乎用到的各种模型和算法都很模糊?特别是cell delay和绕线delay。本文力图消除这种模糊的感觉。NLDM, none lineal delay model即非线性模型,这个模型属于电压源模型。输出v不变,load上cap变化不会对电压影响。明显不适用与现在的大规模先进工艺design。已经淘汰了,米勒效应,温度的变化,高阻互联这些效应也解释不了。CCS,con_current source即复合电流源模型,这个模型属于电流源模型,输出I不变,load上cap变化会对I影响,V也变化。CCS模型计算出的cell delay可能比NLDM模型准确。对于计算Net delay,CCS模型中的驱动模型(随时间变化的电流源模型)肯定要比NLDM模型中的驱动模型(线性变化的电压源模型)更准确。
志芯
ICC2基础知识1--工具支持的几种floorplan类型
#后端  #icc2  #floorplan 
ICC2工具支持不同的floorplan形式,以满足您的设计要求。主要包含以下几种:Channeled Floorplans、Abutted Floorplans、Narrow-Channel Floorplans。以上三种floorplan形式参与的项目都有在用,实际中应该根据自己的设计选取友好的floorplan方式。
小蔡读书
在网表中,触发器是什么样的?
#后端  #dff  #netlist  #eco 
在芯片设计阶段末期,因为schedule的需要,往往出现的情况是RTL code已经freeze了,但是相关的验证还没完成,这时候如果再发现code有问题,需要修改的话,就要直接修改网表(netlist),而不是直接修改RTL code那么简单了。本文介绍了几种always RTL和综合netlist的对比。
数字设计课堂
LEC和ECO中的latch要怎么处理
#后端  #ECO  #LEC 
尽管在全同步数字电路设计中建议禁止用latch,但latch在数字设计中还是有一些优势,比如面积比dff小、可以利用latch来borrow setup timing、保持数据bus、或者是实现特殊的异步锁存电路,所以在实际项目中还是偶尔会在网表里见到latch。ICG(Integrated Clock Gate集成门控时钟)也是一种latch的应用,利用latch来消除时钟毛刺。但是在做lec和eco时,普通latch与icg却需要不同的处理。
NanDigits
巧用DC里的RTL原语实现MUX门级映射
#后端  #综合 
对于前端设计人员,经常会需要一个MUX来对工作模式,数据路径进行明确(explicit)的声明,这个对于中后端工程师下约束也很重要。这里介绍一种巧用的RTL原语,实现MUX的方法。为了在最终网表里边实现确实的MUX,通常有两种方式。1、RTL designer采用了手动实例化(instance)工艺的MUX来实现MUX。但是对于RTL在不同工艺下使用,却造成了一些不便。2、一种使用脚本替换的方法,即在综合elaboration的数据库上进行对标工艺的硬替换(replace),这样也需要一套脚本流程。上述方法可以实现MUX,但是灵活度不是很好,也需要额外的流程和代码量。这里看看DC的解决策略。
艾思后端实现
【IC技术圈专栏】怎样在dc里做物理综合
#后端  #综合 
物理综合就是不单纯考虑时序、面积和功耗,还要考虑APR的形状、pin坐标、可用的金属层等物理信息。
iLoveIC
数字IC设计中的分段时钟树综合
#后端  #CTS 
为什么需要分段去做时钟树呢?因为在某些情况下,按照传统的方法让每一个clock group单独去balance,如果不做额外干预,时钟树天然是做不平的。比如,某个Macro(硬核IP或特定子模块)内部的寄存器,正常情况下工具无法识别到该寄存器,也无法将时钟和外部寄存器的时钟做平。
志芯
数字IC后端PR Flow中应该如何优化静态功耗和动态功耗?
#后端  #功耗 
今天来分享下那些功耗优化方法在数字IC后端实现中的具体应用。我们知道功耗由三部分组成,分别是Dynamic,Short Circuit和Leakage。工艺节点越小越先进,leakage和Dynamic的占比会越高。因此,大家在做具体项目时需要根据自己的process node来重点优化较大比例的那部分功耗。本文详细讨论了几种降低功耗的方法。
吾爱IC社区
Innovus Flexible H-tree Flow
#后端  #CTS 
本文介绍了IC后端训练营项目cortexa7core使用的Flexible H-tree Flow。
吾爱IC社区
浅谈dft之dft概述
#后端  #DFT 
可测试性设计(Design for Testability)是一种集成电路设计技术。它是一种将特殊结构在设计阶段植入电路的方法,以便生产完成后进行测试,确保检测过后的电子组件没有功能或制造上的缺陷。电路测试有时并不容易,电路的许多内部节点信号在外部难以控制和观测。通过在半导体工艺中添加可测试性设计结构,如扫描链等,并利用自动测试设备执行测试程序,可以在生产完成后立即进行质量检测。有些特定的设备会在其最终产品的组件上加上测试功能,在消费者的使用环境下执行时一并测试。测试程序除了会指出错误信息外,还会一并将测试的日志保留下来,可供设计人员找出缺陷的来源。更简单的说,测试程序会对所有的被测设备输入测试信号,并期待它们给出预期的正确回应。如果被测设备的回应与预期回应一致,则可得知电路正常,否则 即为测试错误。为了方便使用测试程序检测错误,电路设计阶段不可忽视可测试性设计。在可测试性设计的规则确认完善下,可以利用自动测试图样发生器进行更复杂的测试。
志芯
【IC技术圈专栏】innovus中如何手动拉线及常用快捷键(又找回了左手键盘,右手鼠标的感觉)
#后端  #innovus 
route之后已经用了相当多的办法(包括调整floorplan)之后,仍然有drc或者antenna,且violation数量不多时,就需要手动拉线了。本文介绍了innouvs里手动拉线常用的工具和快捷键。
iLoveIC
【IC技术圈专栏】innovus dbGet用法探索
#后端  #innovus 
dbGet可以读取innovus的内部设计数据库,从中得到如inst、net、lib、lef等信息,也可以查询cell、net的状态和属性。
iLoveIC
Redhawk_sc中Dynamic IR NPV场景 ​Instance是怎么翻转的?
#后端  #redhawk 
在run dynamic vectorless IR时,instance是何时翻转的?每次有多少instance在翻转?instance pin翻转必须在自己的timing window范围内,具体在timing window内每次有多少instance翻转或者说这个instance pin到底翻不翻?和设置的toggle rate、frame_length、工具算法有关。
小蔡读书
Channel里的Power Switch怎么加?
#后端  #powerswitch 
channel里的switch cell密度通常要比core内密度更高些,以保证mem供电充足。这里至少需要两步操作:1) 获取channel坐标;2) 单独给channel加switch cell。
拾陆楼
ICC2:polygon命令与复杂power plan
#后端  #ICC2  #powerplan 
之前在polygon多边形操作一文中举例介绍了ICC2中如何用polygon命令创建环形金属,这里再介绍一种实用用法。我们需要在M8 stripe与M2 power rail之间搭一座梯子将M2到M8连接起来。首先,抓取二者重叠处bbox,使用的是compute_polygon命令。然后用create_shape on track搭建各层梯子。
拾陆楼