6月3日-6月7日,第一期EFCL(ETH未来计算实验室)暑期学校在苏黎世联邦理工学院(后文称ETH)成功举办,该暑期学校聚焦开源芯片设计和体系结构,吸引了全球150多位相关领域的学生和专家学者报名参加。在整体组织上,EFCL联合了苏黎世联邦理工学院、博洛尼亚大学、都灵理工大学、加州大学圣地亚哥分校、莱布尼茨高性能微电子研究所,邀请IC设计领域顶尖科学家做主题报告,还设置4个专业课程供与会者选择,内容涵盖基于开源EDA的数字IC设计、定制RISC-V微处理器、用于生物信号处理的嵌入式人工智能、以及计算机体系结构和内存系统,每个方向均由博后或教授担任主讲人并配有实验课。
非常荣幸的是,今年2月初“一生一芯”项目组收到了主办方的邀请,派遣“一生一芯”助教去ETH参加本次学习交流活动。这是“一生一芯”项目组第一次走向国际,这次活动不仅为助教们提供了一个开阔国际视野的机会,“一生一芯”也吸引到来自国外学者和学生们的关注。
经过前期精心的准备,6月2日凌晨,“一生一芯”助教王昊,丁昊楠,王郅尊,缪宇飏和缪宇驰一行五人踏上了前往瑞士的航班,开启为期一周的学习交流之旅。经过18个小时的飞行,“一生一芯”的小伙伴们终于在2号夜间到达了苏黎世国际机场,此时苏黎世天空中下着绵绵细雨,灰暗的穹顶之下,清爽湿润的空气驱散了助教们旅途的疲惫,也让大家对明天的活动充满了期待。
6月3号清晨,苏黎世晴空万里,几个助教一早前往ETH的信息技术和电子工程大楼处签到,在去往报到处的路上也领略了众多具有中世纪风格的古建筑。特别值得一提的是,本次暑期学校的志愿者都是ETH的在读研究生,人都很热情友好。在他们的帮助下,助教们顺利完成了签到。在休息片刻后,本次暑期学校的第一场活动——主题报告即将开始。
第三天做报告的是Lana Josipovic,她是苏黎世联邦理工学院信息技术与电气工程系的助理教授,负责领导数字系统与设计自动化小组,其研究目标是让程序员能够从数字硬件加速中受益,并探索编译器、编程语言、数字硬件设计和计算机架构之间的协同作用。
本次暑期学校,Lana Josipovic主要介绍了高层次综合(HLS)目前所面临的挑战,并提出一种名为“动态调度电路”的新技术,它能够在通用软件应用程序中实现更高颗粒度的并行并有效提升电路的生成效率。在近1个小时的报告中,Lana Josipovic教授清晰且高质量的报告为其赢得了满堂掌声。
第四位登场的是Onur Mutlu教授,他不仅是苏黎世联邦理工学院的计算机科学教授,还是斯坦福大学的客座教授和卡内基梅隆大学的教员。Onur Mutlu教授目前的研究兴趣非常广泛,涵盖计算机架构、系统、硬件安全和生物信息学。多年以来,他和他的团队以及合作者所发明的各种技术深刻影响了计算机行业,并已成功应用于商业微处理器和内存/存储系统中。Onur Mutlu教授创办了微软研究院的计算机架构小组(2006-2009年),并在英特尔、AMD、VMware 和谷歌等公司担任过研究职位。他和Luca Benini教授一样,是IEEE和ACM的Fellow,以及欧洲科学院成员。
本次Onur Mutlu教授带来的报告题目是《Memory-Centric Computing》,其深刻揭示了现代计算机体系结构在面对海量数据处理时所必须要面对的访存带宽过小的问题,并探讨了如何根据三个关键原则(以数据为中心、数据驱动、数据感知)来设计出性能更出色,能耗比更高的计算机系统。其在报告中提出了两个具体实现方法:一个是使用存内计算,利用内存芯片的模拟操作特性在内存中执行大规模并行操作。二是邻存计算,即在内存控制器、3D堆叠内存技术的逻辑层或内存芯片中集成复杂的附加处理能力,以实现低内存延迟。
最后压轴登场的是Andrew B. Kahng,他是加州大学圣地亚哥分校计算机科学与工程系和电子与计算机工程系的杰出教授。他曾担任Cadence的客座科学家(1995-1997年)和Blaze DFM的创始人兼首席技术官(2004-2006年)。他是3本书和500多篇期刊和会议论文的合著者,拥有35项已颁发的美国专利,并且是ACM和IEEE的研究员。Andrew B. Kahng教授还曾担任过DAC、ISPD和其他会议的总主席,并从2000年至2016年担任国际半导体技术路线图(ITRS)下属设计和系统驱动程序工作组的国际主席兼联合主席。最令人瞩目的是,他曾担任过美国DARPA OpenROAD项目的首席研究员(2018-2023年)和美国NSF人工智能研究所TILOS的首席研究员和主任。
Andrew B. Kahng教授的本次报告以“为什么要将开源EDA视为未来芯片设计创新的基本要素和重要推动力”这个问题为核心展开,并从商业EDA和开源EDA对比、AI机器学习与开源EDA的关系、基于多线程、GPU和云原生的“EDA 2.0”等多个角度进行了阐述。特别是当Andrew教授在介绍国际开源EDA项目时,还特意提到了来自中国的开源EDA工具集iEDA和iPD。iEDA和iPD是中科院计算所和鹏城实验室于2021年联合发起的开源EDA项目,目前已经在商业PDK上完成了流片验证,并发表多篇国际论文,在国际上获得了不少关注。目前iEDA正在支撑着“一生一芯”后端课程和讲义的建设,相信未来“一生一芯”的学员们很快就能用上iEDA来设计自己的芯片了。
彩蛋:PULP Platform的吉祥物是一个名叫Charlie的小熊,虽然不知道它为什么叫这个名字,但大家都非常喜欢它。在各种重要活动上你都能看到它那可爱的身影,本次暑期学校Charlie基本上无处不在。
听完主题报告后,“一生一芯”的5位助教们还需要从3个不同的专业课程中选择一个来学习,这3个课程分别是“基于开源EDA工具的数字IC设计”、“定制基于RISCV的微处理器”和“体系结构与内存系统”。
本次暑期学校的Track1由EFCL实验室/PULP团队的Frank主讲,他邀到了来自OpenROAD、IHP、Tiny Tapeout团队的创始人或主要负责人来分享IC行业运行的商业逻辑、开源EDA和开源PDK的研究进展、开源EDA对IC行业的影响与潜在收益和由开源芯片生态所催生的新商业模式(Tiny Tapeout)等不同主题。此外本课程还基于PULP开发的裁剪版开源SoC Basilisk,使用开源EDA工具Verilator、Yosys、OpenROAD、商业物理验证工具和IHP130nm开源PDK设计了一个开源芯片实验课,该课程涵盖了芯片功能仿真、综合、物理设计与验证的的方方面面。从形式上,该课程讲座与实验并举,内容上则紧密联系,让参与这门课程的学生和工程师们都受益匪浅。在后续与PULP团队的交流中助教们了解到,筹办这次暑期学校和去年十周年活动是PULP团队这两年来的重点工作,他们从活动筹办、课程安排、实验讲义编写等方面进行了精心准备。而这也给未来“一生一芯”教学环节设计和活动组织提供了宝贵的经验。
计算机体系结构和内存系统方向的课程由Onur Mutlu教授和他的博士生带来,内容主要围绕“存内计算”以及“智能内存系统”这两大主题展开。在接下来的一系列课程中,Onur Mutlu教授团队展示了这些年他们在内存系统上的学术研究成果,并给出了“现代计算系统的性能和功耗瓶颈主要发生在内存内部的数据读写和转移上”这一重要结论。为了解决上述这个棘手的问题,Onur Mutlu教授团队展示了一些具有建设性意义的解决方案以及相关学术论文索引,这对那些正在持续关注内存系统研究并努力想要提升其性能的学者们指明了一条道路。
作为本次活动的主办方,PULP团队还特意开放了ETH主楼天台给参加暑期学校的学员们交流,大家交流的意愿都很高,交流活动从下午6点一直持续到了晚上10点。另外主办方也准备了丰富的茶歇供与会者享用。在天台上可以遍览苏黎世老城区和苏黎世湖的全景,景色非常漂亮。
午餐和茶歇(右下角的面包贼好吃,但是奶酪就一言难尽了)
瑞士特色Rivella饮料,馅饼和梆硬的面包(左两图由PULP团队提供)
王昊助教与PULP Platform兼暑期学校负责人Frank K. Gürkaynak进行交流
“一生一芯”助教们与PULP Platform项目组的博士生进行交流
各位学者和专家们正在交换彼此对开源芯片的想法
ETH主楼内部,计算机教学大楼一层宣传单与爱因斯坦的储物柜
从玉特利山观景塔远眺阿尔卑斯山
经过5天的学习和交流,第一期EFCL暑期学校终于落下帷幕。在这里“一生一芯”助教们学习到了很多新知识,认识了很多来自不同国家,不同背景的学生和工程师们,也切实感受到了近两年欧洲学术和工业界对全链条开源芯片设计的持续关注与投入。其实做开源不是势不两立的零和博弈,而更应该是相互促进,相互协作的良性竞争,这需要在客观分析国内外现状的基础上(技术路线,人力投入,市场化等),努力向国际市场推出有差异化的开源公共产品。另外《资治通鉴·唐纪》中有句古语叫:“创业易而守成难”,当我们已经趟过了芯片设计的小水洼,开始踏入深水区,当目标已经从 “做出一颗芯片”到“做好一颗芯片”方向开始转变时,如何做牢做实我们的工作,踏实地迈出每一步,持续扩大优势成为现阶段一个非常值得思考的问题。
在ETH主楼Dozentenfoyer上的合影
撰稿人:缪宇飏;王昊;王郅尊;丁昊楠;缪宇驰;
摄影:丁昊楠;缪宇飏