0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Standard cell是怎么应用到我们的后端设计中的呢?

冬至子 来源:伟酱的芯片后端之路 作者:伟酱的芯片后端之 2023-12-04 11:44 次阅读

Standard cell,标准单元,或者简称cell,可以说是数字芯片后端最基本的概念之一了,甚至可能没有接触过后端的同学也有所耳闻?

那么,它到底是什么呢?我们为何要设定标准单元呢,以及这些cell是怎么应用到我们的后端设计中的呢?我就来以我个人的理解阐述一下这几个问题。

首先,在芯片设计最早期,门电路不多,晶体管都靠手画在图纸上,所有芯片都是一些逻辑简单的全定制芯片的时代,是不存在什么标准单元的概念的。那时的工程师们只需要把一个一个的晶体管摆好,电路就可以正常工作了。

但是随着集成化越来越高,所有的门电路都靠一个个手画变得非常不现实,一个非常朴素的想法就是把一些用过很多次的电路打包,就比如最基本的与或非门,我们要用的时候直接调用这个包就行了,就像复制粘贴一样,这就非常方便了。

比如一个二输入与门,我只要设计好它的电路,画出它的版图,提取出来它的各项参数,就可以无限次的在整个芯片上复制了。

而后,更进一步,我们可以把整个芯片所有可重用的部分都打包起来,为了方便我们摆放和连线,我们会制定一些规范化的rule,比如我们规定每个包要有固定的高度,称为row,宽度可以以一个CPP(栅极间距)的距离变化,称为site。这样就成为了一个std cell。

Std cell可以大大简化我们的设计复杂度,它的意义,就像盖楼房的砖头,构成生物的细胞,画画的颜料一样。

如果对于任何一个逻辑门都要求后端从头晶体管开始设计,那是真的无法想象的。目前所有的芯片已经全部采用了这种设计方式。

但是,不可避免地,它会有一些资源的浪费,因为每一个cell都是有统一的设计规则,必然不能针对性的在一些小的方面进行优化。

举个例子,在芯片的某个地方可以把pin出在cell左侧比较好route,但是这种cell设计的都是在右侧。当然,类似这样的影响在大型design中可以忽略了。

设计std cell是一件非常复杂的事,我感觉不亚于设计一款芯片的复杂程度。首先是电路的设计,schematic design。有一些具有相对复杂逻辑功能的cell,它的逻辑电路如何设计,如何兼顾PPA地进行设计,其实是很难的,设计结束后还要进行许多的验证之类。而后layout工程师要设计画出cell的版图。

我们后端设计一般绕线层十几层顶天了,版图工程师要面对的是数不清的各种各样的层,有metal,有oxide,有poly,有n区有p区,应有尽有,还要考虑尽可能出pin M1或者M2出,低一点,给我们APR预留更多的绕线资源。

而后还要有专门的工程师来进行cell 参数的提取,一般就是指power和timing的提取。Power应该主要就是leakage,timing就很麻烦了,需要在各个corner下,每个corner出一套它的各项参数。

举个例子,一个cell的delay信息,基本需要在各个PVT条件下,测出各个引脚在各种逻辑状态下,input transition和output load各种情形下,cell的delay值。

更别提一些OCV的信息,还有POCV的lvf信息了。最终所有这一切做好后,就可以生成cell的LIB文件了。结合cell的LEF文件(物理信息),我们后端就可以愉快的用这些cell搭积木啦。

我们后端在用的时候,这些cell就是一个一个的黑匣子,看不见内部,只能看到它的大小和出pin的信息。读入网表文件后,相应的cell就出现在我们的GUI界面了。对了,前端在综合的时候也需要读cell的lib。

他们拿到的RTL代码不会指定一个与门要用哪种cell,比如我们目前有两种不同的与门cell,逻辑功能一样,但是有一些别的差异,综合工具就会全面考虑这一块电路,选用相应的cell作为那一段verilog代码里表示的与门。先写这么多吧,文中提到的各种名词之后我可能都会写一写,希望对大家有所帮助。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 晶体管
    +关注

    关注

    76

    文章

    9054

    浏览量

    135219
  • 门电路
    +关注

    关注

    7

    文章

    191

    浏览量

    39842
  • RTL
    RTL
    +关注

    关注

    1

    文章

    377

    浏览量

    59068
  • 数字芯片
    +关注

    关注

    1

    文章

    99

    浏览量

    18246
  • Layout设计
    +关注

    关注

    1

    文章

    12

    浏览量

    1546
收藏 人收藏

    评论

    相关推荐

    xilinx XST属性设置如何应用到全部工程

    求助:我想在某个工程设置好的 XST属性如附件,应用到全部已有的工程或者新建的工程,怎么能够实现?
    发表于 04-25 18:17

    请问,我的labview有的程序出现了错误,或者应用到实际时无法运行,怎么查找错误

    请问,我的labview有的程序出现了错误,或者应用到实际时无法运行,怎么查找错误
    发表于 02-23 15:13

    cc3000应用到飞思卡尔上

    TI工程师您好,我想把cc3000应用到飞思卡尔上,现在有cc3000+msp430,如何实现
    发表于 06-21 15:50

    求一份tsmc 7nm standard cell library

    求一份tsmc 7nm standard cell library求一份28nm或者40nm 的数字库
    发表于 06-25 06:39

    ESP32能应用到治具

    之前我对治具了解不多,这次看了启明把ESP32应用到治具,确实有些差异,但也觉得没毛病。治具分很多种,今天我们要介绍的是一款专门针对主控芯片或模组进行功能性和软件版本测试验证的治具。因为这些主控
    发表于 07-27 06:07

    请问如何将Swift语言应用到MCU开发

    请问如何将Swift语言应用到MCU开发
    发表于 02-11 07:30

    上传android应用到googlemarket步骤

    上传android应用到googlemarket步骤
    发表于 03-19 11:23 0次下载

    数字后端G cell概念介绍

    今天我们要介绍的概念是G cell,全称global routing cells。 同样的它也是我们定义的一种grid, G cell grid对routing过程中起着相当重要的作用
    的头像 发表于 02-02 17:14 7666次阅读
    数字<b class='flag-5'>后端</b>G <b class='flag-5'>cell</b>概念介绍

    Linux环境编程:从应用到内核

    Linux环境编程:从应用到内核资料下载。
    发表于 06-01 14:51 15次下载

    人脸识别技术如何应用到汽车领域

    随着科技日新月异的发展,人脸识别技术已经广泛地应用到我们生活中的方方面面,从手机屏幕解锁到门禁系统、从电子支付到软件登录,深刻改变了我们的生活习惯和出行方式。
    的头像 发表于 12-15 16:02 2760次阅读

    IP 数据表: 1.8V Standard Cell for TSMC 28nm HPC+

    IP 数据表: 1.8V Standard Cell for TSMC 28nm HPC+
    发表于 03-14 19:21 0次下载
    IP 数据表: 1.8V <b class='flag-5'>Standard</b> <b class='flag-5'>Cell</b> for TSMC 28nm HPC+

    IP 数据表: 3.0V Standard Cell for TSMC 40nm LP

    IP 数据表: 3.0V Standard Cell for TSMC 40nm LP
    发表于 03-14 19:22 2次下载
    IP 数据表: 3.0V <b class='flag-5'>Standard</b> <b class='flag-5'>Cell</b> for TSMC 40nm LP

    IP 数据表: 1.8V Standard Cell for TSMC 28nm HPC+

    IP 数据表: 1.8V Standard Cell for TSMC 28nm HPC+
    发表于 07-05 19:47 0次下载
    IP 数据表: 1.8V <b class='flag-5'>Standard</b> <b class='flag-5'>Cell</b> for TSMC 28nm HPC+

    IP 数据表: 3.0V Standard Cell for TSMC 40nm LP

    IP 数据表: 3.0V Standard Cell for TSMC 40nm LP
    发表于 07-05 19:47 0次下载
    IP 数据表: 3.0V <b class='flag-5'>Standard</b> <b class='flag-5'>Cell</b> for TSMC 40nm LP

    如何将Kafka使用到我们后端设计中

    本文介绍了以下内容: 1.什么是Kafka? 2.为什么我们需要使用Kafka这样的消息系统及使用它的好处 3.如何将Kafka使用到我们后端设计中。 译自timber.io
    的头像 发表于 10-30 14:30 255次阅读
    如何将Kafka使<b class='flag-5'>用到我们</b>的<b class='flag-5'>后端</b>设计中