在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 21917|回复: 42

[原创] magma的前世今生

[复制链接]
发表于 2011-12-2 10:38:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
让我老简单讲讲magma的发家史

说起Magma,一定会提到他们的印度人CEO Rajeev,是他领导magma从小到大,一路走来。与synopsys和cadence不同,magma的战略方向基本上是Rajeev一人决定,这样做的好处是容易把握方向,乔布斯在世时的Apple就是这个路数,坏处是一旦指歪了道,整个公司就会遭遇大的失败。

这位印度老哥以前在Avant!工作,那可以咱们华人的天下,不幸被cadence告垮了,大家只好各奔东西。公司虽然没了,但是先进的设计思想没有丢失,大家一致认为,cadence的silicon ensemble已经无法满足当时的设计要求,timing driving的APR已经成为EDA的发展方向。

Cadence那几年一门心思打官司,技术上没什么长进,只好从市面上买EDA的startup公司,First Encounter和Nano Route就是那几年买进的。

Synopsys捡便宜,把Avant!收编了,作出了astro等APR tools。当时synopsys里面还有人提出一个更好的方法,不幸的是,这个好的方法不能和他们的看家工具DC和PT兼容,所以就放弃了。

Rajeev就组织一帮人,成立了magma,来实现这个好的APR方法。因为他们知道DC,PT和silicon ensemble的长处和短处,而且是从零开始做EDA tool,所以“可以在根本上解决那几个软件的先天不足”。

其核心技术是一个叫super-cell的模型,
理论基础是:如果要使一条路径满足时序约束,就要调整路径里面的单元(位置和大小),而一个单元的调整会引起它的前后级单元的变化,所谓牵一发而动全身。
解决方法是:先把gate level netlist转化成super-cell,super-cell可以无级调整自己的gain,用这种理想的单元先把每个cell的gain确定好之后,再从标准单元库中找最接近的物理单元替换回来。这就是我们看到在fix place时,开始的timing很好,到后面某一步时,突然变坏的原因。

加上magma对复杂时序约束的精确认知,使得它在时序收敛上被受称赞。硅谷几家大公司几年当中积累下来的复杂设计,一个接着一个被magma解决。

当时的cadence还没有把FE和nanoroute整合好,这几样东西虽然绑在了一起,但是还缺少一个common timing engine

技术上的次涨彼消,同时magma降价促销,几年下来,夺走了cadence和synopsys的不少客户。到2003年,magma公司市值超过12亿美刀。

因为有Avant!被cadence告倒的前车之鉴,Rajeev对synopsys的专利十分小心,本来以为只要不拷贝代码,只带着脑袋出来,总不会出问题,没想到,我们的码工写东西有自己独特的方式,无论在Synopsys还是在magma,都沿用自己熟悉的格式,使得synopsys找到了可以起诉的根据。官司一直到2007年才庭外和解,magma割肉1250万美刀。
发表于 2011-12-2 10:52:54 | 显示全部楼层
学习了,虽然还没用过他的软件
发表于 2011-12-2 10:53:03 | 显示全部楼层
陈版真是资深,见识了,不知道icc和talus的综合会是怎样的效果
发表于 2011-12-2 10:54:32 | 显示全部楼层
"先把gate level netlist转化成super-cell,super-cell可以无级调整自己的gain,用这种理想的单元先把每个cell的gain确定好之后,再从标准单元库中找最接近的物理单元替换回来。"对于这一段话不是很了解,还望陈版主详细解答下,谢谢~
发表于 2011-12-2 11:17:38 | 显示全部楼层
霸气MAGMA,没用过他软件的飘过
 楼主| 发表于 2011-12-2 12:40:18 | 显示全部楼层
回复 4# wdtfjfe


    即将要过去的东西了,不学也罢

这里有些解释
http://www.ultralithic.com/bcug_v31.pdf
发表于 2011-12-2 12:53:48 | 显示全部楼层
不错,哈哈看看
发表于 2011-12-2 12:57:32 | 显示全部楼层
“这就是我们看到在fix place时,开始的timing很好,到后面某一步时,突然变坏的原因。”

这指的是Magma在座timing closure的时候出现的问题,还是其他tools?
发表于 2011-12-2 13:01:14 | 显示全部楼层
这个是用logic effort的概念, 有些微电子书会讲 ,

就是本级的单元输出比输入 = gain , 利用gain来调整cell size,

supercell是一个抽象概念,你如果用过magma,这个应该清楚的,

和主流的STA  方法有些不一样,

天下大一统啊, magma又回了synopsys怀抱,

synopsys的icc还是厉害,


斑竹再讲讲其他几家的轶事吧,  
话说synopsys原来后端压根没工具,收购了avanti 以后真的很猛
cadence真是 老了,丢了一块又一块,

不过从IP方面, synopsys IP更多,  lib方面收购了viragelogic,
cadence收购denai, memory IP多些
发表于 2011-12-2 13:05:50 | 显示全部楼层
Avanti的故事很好玩,当时的工具全是以星球命名
Astro: pr tools
Apollo: Astro的前面版本
Milkyway : 银河数据库结构, library builder
Mars :  ir-drop tool
Jupiter: floroplan  tools , hier design
Hercules:  drc/lvs tool
Starxt:  extracttion,

直到现在 ,在synopsys implementation flow里面还有着显著的痕迹,

后来因为抄袭cadence被告,原因是有个代码里面还有“cadecne design system"的字样,
抄也不小心点,真是,

Astro 于2003年推出, 继承Apollo的风格,更厉害,
2004年开始支持tcl,这就是你看到Astro界面不是有个tcl 栏么,
刚开始tcl支持的很差, scheme,tcl混用真是累,

到2007年,Astro + PC= ICC ,  icc一开始的版本太烂了,
gui动不动crash,比如2007的版本, 到了2009 才开始robust,
因为继承了jupiter, pc, astro,功能是相当的强大,
到了2010 ,支持upf等flow,zrouter,强大, 支持28nm router,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /3 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-20 10:02 , Processed in 0.028987 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表