第128章 “盘古”再突破 - 逻辑综合的曙光
代码潮汐提示您:看后求收藏(第128章 “盘古”再突破 - 逻辑综合的曙光,大杂烩姨妈姐妹齐上阵免费阅读,代码潮汐,废文网),接着再看更方便。
请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。
就在启明芯的最高决策层为如何有效利用汹涌而来的现金流而进行战略擘画的同时,公司内部那支肩负着“核武器”研发重任的“盘古”EdA团队,再次传来了令人振奋的突破性进展!这一次,他们攻克的目标,是比布局布线(p&R)更靠前、同样被视为EdA流程“三大支柱”之一的核心环节——逻辑综合(Logic Synthesis)。
逻辑综合,是将芯片设计工程师用硬件描述语言(如Verilog或VhdL)编写的、描述电路逻辑功能的RtL(寄存器传输级)代码,自动地、优化地转换为由与门、非门、或门、触发器等基本逻辑单元(Standard cells)组成的门级网表(Gate-Level Netlist)的过程。这个过程的质量,直接决定了最终芯片的性能(速度)、功耗和面积(成本)——也就是业界常说的ppA(performance, power, Area)。长期以来,逻辑综合市场几乎被Synopsys公司的旗舰产品design piler(dc)所垄断,其技术壁垒之高,算法之复杂,令无数试图挑战者望而却步。
然而,李志远和他的“盘古”团队,在成功突破p&R引擎之后,并未满足于现状。在林轩“必须掌握全流程核心工具”的战略指引和充足资源支持下,他们迅速将下一个主攻方向,锁定在了逻辑综合这一同样关键的领域。为此,团队内部专门成立了一个由那位从Synopsys挖来的资深架构师领衔、并配备了多位在布尔逻辑优化、技术映射、时序分析等方面有深厚积累的博士和工程师组成的“逻辑综合攻坚小组”。他们为这个新的引擎,起了一个同样富有神话色彩的代号——“女娲”(Nuwa),寓意着如同女娲造人般,将抽象的逻辑代码“创造”为具体的门级电路结构。
“女娲”引擎的研发,挑战甚至比p&R更大。它不仅需要处理极其复杂的布尔代数运算和图论算法(用于逻辑优化和技术映射),还需要与工艺库(technology Library,包含了标准单元的物理和时序信息)紧密结合,并且要能够准确地预测和优化电路的时序(需要内置一个高效的静态时序分析引擎)。
林轩再次发挥了他“先知”般的作用。他不仅为团队指明了几个关键的算法方向(例如,建议他们研究当时还比较前沿的“基于重写规则的逻辑优化”(Rewrite-based optimization)和“考虑物理实现的综合”(physical Synthesis)等思想),甚至还“不经意”地提示了一些可能存在的、design piler早期版本中的优化“盲点”(比如在处理某些复杂的算术逻辑或低功耗设计意图时,dc的优化效果可能并非最优)。
“女娲”团队的成员们,在这些极具价值的“提示”下,如同被打通了任督二脉,研发思路豁然开朗。他们夜以继日地进行着算法设计、编码实现和测试验证。他们将启明芯内部正在进行的几个预研项目(如“启明三号”的部分模块)的RtL代码作为测试案例,反复地用“女娲”原型引擎进行综合,并将结果与最新版本的design piler进行详细的对比分析。
过程充满了艰辛和挫败。有时,“女娲”综合出来的网表逻辑功能是错误的;有时,虽然功能正确,但ppA指标却被dc远远甩开;有时,在处理某些特殊的Verilog语法或设计约束时,引擎会直接崩溃……每一次失败,都意味着需要重新审视算法、重构代码、进行更深入的调试。
但团队并没有气馁。李志远和那位前Synopsys架构师以身作则,带领大家攻克了一个又一个技术难关。林轩也常常在深夜来到EdA中心,和大家一起分析问题,提供思路。
终于,在2001年的金秋时节,经过近一年的艰苦奋战,“女娲”逻辑综合引擎的原型(可能还只是V0.8版本),在处理几个内部的关键测试模块(例如,“启明三号”中一个复杂的音频处理dSp核心的RtL代码)时,取得了令人瞩目的突破!
在一个内部技术评审会上,负责“女娲”项目的架构师激动地向林轩、李志远以及技术委员会的其他成员展示着对比测试结果:
“……对于这个五万门规模的音频dSp核心,使用相同的设计约束(时序、功耗、面积)和相同的0.25微米工艺库(他们已经开始为下一代工艺做准备了),design piler最新版本综合后的结果是:关键路径延迟3.5纳秒,总面积0.8平方毫米,动态功耗15毫瓦。”
本章未完,点击下一页继续阅读。