数字后端需要对design了解到什么程度
一般意义上的后端应该就是从netlist到gds的工作。
前端给了netlist和constraint,板级和封装方面给了芯片形状大小和IO布局等,工艺方面也很早被确定下来,工艺库等数据文件也准备好,基本就可以开始正式的floorplan->placement->CTS->routing->incremental timing optimization->DRC/LVS/anntenna/...的后端流程了。
我所说的对design的了解,主要是针对netlist和constraint。netlist表征了design的逻辑功能,constraint保证了design的性能,与前端designer的交互基本就集中在这两个方面。
最常见的交互就是constraint的问题,当timing怎么都不能满足,area不够用,power超标的时候,后端的第一反应就是:是不是constraint有问题?于是我们就会开始和前端沟通,某些path是不是可以relax一下,是不是可以设成multi-cycle path或者false path,clock cycle是不是定得有问题,IO constraint是不是合理...这样交流多了,就会积累下来关于design的一些经验,在做下个一chip的时候,会特别去关注某些奇怪的现象在以前是不是碰到过,在流程的早期就会去发现constraint方面的问题,加快了一点实现收敛的速度。
大多数时候,后端对于netlist的质量没什么抱怨,有时候也不知道该对netlist抱怨些什么。我碰到过的一些情况:某些path逻辑深度太长,timing没法满足;一个flipflop有大量的fanout endpoints,需要多级buffer去驱动,timing没法满足;某些logic综合出来的stdcell在placement时pin density过高;logic group划分和联系混乱...这些都是有可能要求前端对logic进行有针对性的优化的。
从上面的例子来看,基本是一种头痛医头脚痛医脚的西医策略,不出问题是不会去仔细看的,对design的了解相当有限,如同是瞎子摸象,我们看到的都是表面上的问题。
听说一些高性能design的后端floorplan需要对design有深刻了解,比如说要了解design的架构,数据流,logic划分等等。这种对design的理解境界我想比喻成中医对人的理解,是一种系统宏观的高层次的自顶而下的一种境界。
我的问题是:
1. 这种境界存在么?有没有具体的例子?
2. 这种境界有必要么?可能我接触的design有限,给我的感觉是一个chip的性能,功耗,面积等指标的瓶颈并不在后端。要达到这种境界花费的成本与各项指标的提高相比是否值得?
希望大家能指点一二~
数字电路现在就是螺丝钉,民工活,技术含量太低了
您说的这种境界,能达到当然是最好,但是我觉得现在要大范围培养这样的人才太难了,人的精力太有限了,怎能要求一个人前后皆通?!一个人懂数字前后端,那他需不需要懂算法?懂架构?我个人觉得这样的人只能可遇而不可求,虽能培养,但也绝不是很容易的事情!哇靠,懂全了就逆天了,会招天谴的!所以我觉得与其靠牛人指点江山,还不如依靠有效的工作流程,靠几个方面的工程师交互工作来得靠谱!靠精英以治国,不如法制
你太激动了..
这不是一种要求
而是追求
撇开我的帖子内容不谈
跨界人才从来都是需要的也是有的
但基本不是靠培养出来的
什么叫后端主导,前端review
能说细一点么
除了constraint,design的基本信息外
还有有什么是需要文档交接的?
这些对工作有什么帮助?
我不是搞后端的,我觉得基本思路就是说
后端工程师发现搞不定,不是说只能向前端工程师提请求
而是能指出前端工程师改进的方向,
或者更早一步,在设计的进行中就预见到后端可能遇到的困难,并提出改进意见
前后端两个team 轮着来 这个项目team1做前段 team2做后端
下个项目team2前端 team1后端
互相体谅对方 换位思考
后端写constraint...
真是超出我的理解范围了
这得和前端交互多少次才定得了一版constraint啊
还好吧,我们综合也是后端做
我有点明白了
综合我以前也做过
做过了也就不觉得怎么神秘了
要写constraint,估计要从了解时钟结构开始
划分模块可以从功能出发也可以从时钟出发
这些以前就想过
前两天有人正好问起这事
干脆就写出来了
我的问题是:
1. 这种境界存在么?有没有具体的例子?
>>>>>> 存在。在非常复杂而且面积巨大的design中,比如GPU,gaming,server的
chip,top level PD需要对design有深刻的宏观的理解,一个好的partition以及top的
布局,会大大加快收敛速度,可惜的是没有验证过,差的pd是不是会大大的delay
schedule 。。。
2. 这种境界有必要么?可能我接触的design有限,给我的感觉是一个chip的性能,功
耗,面积等指标的瓶颈并不在后端。要达到这种境界花费的成本与各项指标的提高相比
是否值得?
>>>>>> 同上,性能瓶颈不再后端,说到底,后端是负责实现的。后端要负责的是
schedule,境界太差,schedule就要delay啦