AutoESL与Xilinx那些人和事
大年三十,看到Xilinx收购AutoESL的新闻, 顿时觉得今年特别喜庆,于是,连春晚也懒得骂了。 本想立即写一篇博文八卦一番, 怎奈亲朋好友饭局不断,一直拖到今天才动笔。
与一年前Xilinx宣布与ARM联姻一样, 这次Xilinx收购AutoESL,堪称影响深远的大事,而这件大事的背后,华人,确切的说,来自中国大陆的精英,是这件大事的绝对主角。他的名字叫丛京生,英文名字 Jason Cong. 如果你年龄足够大,应该知道80年代,小平阅兵那次,北大学子打出横幅, ”小平你好“,据说,Jason就是打横幅的学子之一。
上照片:
你如果看Jason的简历,会发现这么一个title, 叫Chancellor's Professor, 翻译成中文,是“校长讲席教授”,或者叫 “校长特聘教授”,能在加州大学洛杉矶分校(UCLA)得到这个职位,绝对是大牛。 同时他也是 IEEE,和 ACM的fellow.
丛教授80年代毕业于北大。 在美国主要搞EDA的研究,90年代将研究成果商品化,开了一个公司,随后将公司卖给了Magma, 大概在2000年,丛教授开始在UCLA研究当时EDA中最热门的题目之一, “系统级设计工具”(ESL), 搞了一个叫xpilot的高层次综合工具(HLS). 研究一作,就是5年多,直到2005年。
2005年,做这项研究的几个博士生,有不少来自于北大。要毕业了,经过对比,发现xpilot的效果比当时一些已经商业化了的ESL工具好很多。一合计,干脆,搞个公司吧,起名AutoESL。
应该说, 丛教授研究ESL中的HLS工具, 起步并不算特别早, 因此,他开始研究的时候,不少丛90年代中期就起步的研究成果,在2000年前后,纷纷商品化,出现了不少公司,SystemC等系统级语言,也开始成熟。不少ESL工具如雨后春笋般地开发出来, 比较著名的公司有 Atrenta,Calypto、Celoxica、ChipVision、CoWare、Forte等, 当然,EDA的三大巨头Cadence, Mentor Graphics Synopsys也有各自的解决方案。
在ESL的先驱中,Coware公司必须浓墨重彩地提一下,原因一,是2004年,我,Kevin,在上海参加过他们一个产品宣讲会, 临走拿了他们一大堆资料,印刷质量很好,就是纸太硬,不舒服...........原因二,当然是最重要的原因, Xilinx现任CTO, 我的老板的老板, 不会磕瓜子的Ivo Bolsens 是Coware的创始人之一。事实上, Coware 公司, 是位于比利时的IMEC(欧洲微电子中心)孵化出来的公司之一,当时 Ivo任欧洲微电子中心的集成电路设计副总裁。
上照片:
Coware的成立起源于1992年开始的一个Ivo领导的 IMEC的内部研发项目, 目的是提供系统级的设计手段,从而使大规模集成电路设计更有效率。 项目逐渐有了 成果,于是,商品化,搞公司。Ivo开始担任Coware公司的高管。 2010年,Synopsys收购了Coware。
2000年前后, Xilinx的CEO,Ivo的比利时同乡Wim找到Ivo当CTO的时候, Ivo一头雾水,说:我又不懂FPGA, 你为啥找我嗫? Wim说, Xilinx已经有上百个FPGA专家了,找你来,就是让不懂FPGA的人可以立即使用FPGA.
Wim的一句话, 让Ivo孜孜不倦地在Xilinx一干,就是10年。Ivo领导的Xilinx Research Lab, 也从来没有停止过实现“就是让不懂FPGA的人可以立即使用FPGA.”这个梦想的各种尝试和研究。
因此,当2005年左右,UCLA的丛京生教授找到Ivo的时候,Ivo在这个领域,已经耕耘了多年,老江湖了。当丛京生教授说AutoESL可以直接把C语言转化为硬件描述语言 ,并且质量不仅比现有的所有ESL的工具要至少高2倍, 比人工写的代码,也要好很多的时候, Ivo的第一反应,是:“遇到大骗子了” 。
接下来是严格的测试。 先给一段C代码让丛教授的团队转化,结果很快就出来了,效果很好。 为了防止作假,拿到xilinx实验室去测。 xilinx实验室正好完成了一个项目,由几个高手人工精心开发的视频算法FPGA实现,耗费了数个月,算法有一稿参考C语言模型,俗称黄金模型(Golden)正好可以让丛教授的团队转换。 没多久,转换完毕,效果一比较,乖乖,比手工开发的各项指标,只好不差。
Ivo 立即作出了决定,对丛教授的公司投资,2006年,Xilinx公司成为了AutoESL公司的股东。 Ivo代表xilinx,进入了董事会。
2010年,AutoESL 的性能经过BDTI的中立评估, 评估结果再次超出了所有人的想象。
为方便大家,把BDTI文档贴在这里:
当然,任何事情都不是魔术,在BDTI的报中,也提到了,普通的C程序,也需要实现进行一些优化和修改,这些优化和修改,需要人工进行。 就像标准的C语言程序,用到DSP上,也需要进行手工循环展开等优化一样。
AutoESL公司的主要研发团队分为两块,一块在硅谷,一块在北京,核心人马来自于丛教授的母校,北大。
Xilinx收购AutoESL,意味着Xilinx的从事核心研发的团队,终于落户北京。 以此为核心,是否xilinx也会在北京成立研究院之类的机构,是一个饶有兴趣的话题。
丛教授,也接收了北大的邀请,在北大建立了研究室。 2010年12月,丛教授不改学者本色,又向新的目标发起了冲锋, 在北京大学成立了高能效计算与应用中心。(请注意是高效能而不是高性能)。
2009年,第二届开源硬件与嵌入式大赛,OpenHW09的开幕式上, AutoESL公司向 教育部“北工大-Xilinx软件工程(嵌入式方向)应用人才联合培养模式创新实验区” 捐赠了AutoPilot软件, 北京工业大学成为目前唯一被AutoESL捐赠的学校。
2010年,Kevin在“北工大-Xilinx软件工程(嵌入式方向)应用人才联合培养模式创新实验区”讲授共建课程 “软硬件协调设计导论”,AutoESL公司现场演示了讲授了工具的使用方法。
事实上,收购AutoESL,对Xilinx推出的ARM+FPGA芯片,也意义重大。 你可以想象,一个完全不懂FPGA的软件工程师,可以毫无困难地先在ARM上跑C语言,然后,抓出其中的关键代码,用AutoESL转化一下,变成专用硬件协处理器, 根本不需要碰硬件设计.
Kevin每次做演讲,总要提到爱因斯坦的e=mc2的软硬件转换公式,不少听众还是云里雾里,不明白。不久的将来,Kevin终于可以用ARM+FPGA+AutoESL的例子完美阐述这个转换。那时就可以理直气壮地说:用Xilinx做嵌入式, 很给力, 你懂的!
from:http://www.eefocus.com/Kevin/blog/11-02/203697_4df37.html