在激烈的市场竞争中,创新和差异化对产品的成功至关重要。为了达到这一目的,必须寻找能够价格合理的IC解决方案实现特定的差异化应用。随着工艺的提高和市场的变化,标准单元ASIC面临的风险越来越多:一是NRE费用越来越高。而中国IC公司刚起步,力量比较薄弱,往往缺少雄厚的资金来保证;二是定制时间长,而市场的变化又比较快。一个ASIC设计成功以后,当初看到的市场不一定还在;三是用户的需求变化快,产品更新换代频繁,这就要求ASIC也要随着变化。正因为如此,全球ASIC设计新项目的数量逐年下降。而FPGA又面临着单片价格问题。一个用FPGA设计的产品开始量产的时候,高昂的价格降低了产品的竞争力。此外,高功耗也限制了产品的性能。本文介绍一种零NRE可编程ASIC技术——eASIC技术和产品,以及设计和生产流程。由于无需NRE,这种创新的芯片设计技术能极大地降低风险,使得各公司都能设计得起自己创新的IC。
现有几种IC设计技术的优缺点
现有的IC技术可分成四种:门阵列ASIC、标准单元ASIC、FPGA和结构化ASIC。传统的门阵列ASIC采用“门海”方法,将许许多多晶体管阵列预先刻制在晶圆上做成半成品存放起来。之后,根据特定的设计要求,再用金属层将晶体管连接起来。因此,对于不同的设计而言,其金属层和过孔层是不一样的。然而,随着工艺演进到0.18um以下,再缩小晶体管面积已经失去优势,因为触点的面积和金属线宽度限制了阵列的使用,故采用门阵列无法再显著节省成本和时间了。因此,对今天许多应用而言,门阵列技术已经不是一种可行的选择。
标准单元ASIC具有高性能、高密度、低功耗以及良好的设计灵活性等优点。标准单元ASIC是建立在各种预制的单元库上的。这些库由ASIC厂商提供。用户使用这些库来实现他们的设计。设计完成之后,可交给ASIC厂商或流片厂商制造。对某一个特定的设计,从散装的硅片开始,每一掩模层都需要制造。这就意味着高成本与长时间。当工艺演进到0.13um以下时,使用8~9层金属互连,掩模的成本呈现指数增加,制作周期也变得越来越长。例如,一套90nm的NRE费用通常高达100万美元。除非有巨大的产量支撑,否则无法消化高昂的费用。随着市场产品的个性化和多样化、上市时间加快、更新换代的速度加快、产品生命周期的缩短,越来越少的产品能达到如此巨大的产量。
另一方面,当工艺进步到深亚微米,逻辑单元的传输延迟相对于信号的布线延迟而言已经不重要了,而布线延迟变得很难预测。由于在增大密度的同时互连线的电阻、电容也变大了,串扰、开关功耗以及定时收敛等问题成为深亚微米标准单元ASIC的大障碍。通过提高密度得到性能改善的回报越来越小,极限逐渐凸现。
FPGA具有灵活的可编程性。因为不需要掩模,不产生NRE费用,深受广大设计者的欢迎。利用FPGA设计软件平台,用户可以方便将FPGA器件编程为自己所需要功能的芯片。然而FPGA有其天生不足之处,80%的硅片面积被用作布线路由。与标准单元ASIC相比,FPGA占用的面积大、单价高、功耗高、保密性差。这些缺陷将FPGA的应用局限在样机、功能验证、低密度和低产量的应用场合。从而无法占据ASIC市场的主导地位。而且随着工艺的深入,FPGA也面临着与标准单元ASIC一样的问题,即路由延迟变得很难预测,设计周期也会因此被延长。
结构化ASIC的概念与门阵列相似,只不过采用了预制“逻辑单元海”而不是“门海”。每个逻辑单元由许多晶体管和几层金属层组成,形成基本逻辑功能诸如查寻表(LUT)、多路复用器(MUX)、触发器Flip-Flop等。将千千万万的逻辑单元预先制作在硅片上,并用若干层金属将它们连接起来做成半成品晶元。在这个基础上,通过最上面的几层金属将逻辑单元互连起来,实现用户定制的设计。结构化ASIC结合了FPGA的粗颗粒组织结构和标准单元ASIC的金属布线路由层,吸收了各自的长处,规避了双方的缺陷。结构化ASIC的密度可以做到标准单元ASIC的50%~75%,大约是FPGA的25倍。由于绕线互连是通过金属层实现的,其性能和功耗接近标准单元ASIC。结构化ASIC主要优点在大幅度降低NRE费用,包括制造工具的成本,还缩短了制造周期。
包括AMI、Chip-Express、LSI、NEC和富士通在内的许多公司都发布了结构化ASIC产品。几乎所有的结构化ASIC采用分级多层金属互联方法:用底下几层连接晶体管形成逻辑单元,再用上面几层金属互联逻辑单元构成逻辑电路。这就意味着,对于大部分电路,上方金属层只要连接下面的金属层就可以了,而不需要触及硅片扩散层上面的晶体管。但是,如果欲编程逻辑单元的功能,使得设计具有一定的灵活性,上层金属层就需要往下走到硅片上。这在一定程度上,限制了中间布线的密度。
eASIC的技术及物理结构
eASIC采用独特的结构,突破了上述限制。eASIC的架构也是基于结构化ASIC技术,将经过预处理的晶元存放起来等待最终的用户定制。与其他结构化ASIC不同的是,这些晶元已经预先处理到了第6层金属层。对所有的设计而言,从硅片到第6层金属层都是通用的。只有单一的过孔层Via6是用来定制各种设计的路由、IO口以及单元类型(逻辑、SRAM或者PLD)。金属布线标准化和过孔可编程定制是eASIC的突破性技术。如图1所示。
图1:eASIC物理结构层次剖面示意图。
由于过孔层只占不到金属层面积的三十分之一,用直接写e光束(Direct-Write eBeam)就可以实现无掩模定制,处理时间快了10倍。由于无需NRE费用,又可以缩短上市时间,这种无掩模的e光束技术最合适样片和小批量生产。
1. 混合定制——比特流可编程逻辑单元,过孔可编程路由连线
eASIC技术的独特之处在于采用混合定制方法。设计逻辑采用基于SRAM的可编程查寻表LUT,如同FPGA,在上电之后通过比特流来定制。另一方面,布线路由则是在工厂里面通过单一过孔层来定制。这种单一过孔层可以不需要昂贵的掩模生产,而采用直接写e光束(Direct-Write eBeam)来实现。大规模生产时候,则可以采用单层掩模。其他ASIC技术和FPGA在实现逻辑单元编程和布线路由时要么都采用掩模,要么都采用LUT。eASIC是唯一结合了两种不同定制技术,像FPGA那样用比特流编程逻辑单元,像标准单元技术那样用金属连接实现布线路由。因此,获得了双方的长处:类似FPGA的低开发成本,短制作周期,灵活性;类似标准单元ASIC的高密度、高性能和低单价。
2. 粗颗粒基本构件块eCore
在eASIC中,基本建筑构件块是e核(eCore)。一块e核由8块e单位(eUnit)组成,而一个e单位由16×16个e单元(eCell)加上专用行列译码器组成,如图2所示。
图2:具体的e核组成结构图
这些译码器允许e单元LUT中的比特单元可以当作双口SRAM存储器模块或者PLD宏单元。e核集成了8块e单位、时钟树、触发器扫描链以及LUT配置的串行接口,形成一块硅片IP核模块。在标准平台里面,由e核组成的阵列可以形成各种可配置数字逻辑,将硬宏诸如微处理器、SRAM、ROM,模拟IP与这些e核阵列集成起来,就可以实现某种完整的SoC设计。
在深亚微米,采用粗颗粒构建逻辑函数比用布线连接众多细颗粒门显得更加有效,因为这些连线会带来很大的时延。正如过去从全定制转到标准单元时用门级面积来替代晶体管面积那样,在深亚微米,应该过渡到更粗更大的构建块。于是自然就会想到使用FPGA里面的普遍使用的查寻表LUT。查寻表LUT的粗颗粒逻辑结构允许采用标准化的底层金属路由构建基层逻辑组织。用分段式布线可以将重复排列的粗颗粒逻辑单元有效地组成的逻辑组件。实际上,粗颗粒逻辑组织的真正好处就在于可以使布线路由标准化、规则化。
3. 最小逻辑单元——e单元
具体的e单元的电路如图3所示。
图3:具体的e单元组成方框图。
e单元是由底部2层金属与硅片扩散层构成。一个e单元可以替代大约15个标准单元的门。它由2个3-输入LUT,通过一个复用器与一个触发器F-F连接。一个2-输入的NAND门驱动每个LUT中的一条输入。LUT可实现任何3-输入函数。有了NAND之后可以提供一个LUT4的子集。由于允许采用比特流来编程逻辑函数,而不需要用金属掩模来定制,提高了设计的灵活性,方便了后期调试。
这种类型的单元已经在FPGA里面使用了近20年,是一种成熟的实现逻辑函数结构。eASIC的创新之处在于将FPGA的单元结构与标准化的固定的金属布线结合起来。从而大大节省了硅片面积,增加了密度。通过微调e单元内部的器件,结合使用金属布线与e单元驱动输出端,就可以构建一种功耗、性能与标准单元相近的逻辑器件。
eASIC的4个LUT的面积与FPGA的4个LUT的面积比较。在同一工艺条件下,eASIC的4个LUT的面积只有FPGA的4个LUT的面积的1/25。同一门数量级的器件的裸片面积约是FPGA的五分之一。
4. 变标准单元为标准金属
由于一个e单元可以替代十几个门,因此元件的布局数量就可以减少一个数量级。标准单元之间的局部互连就被e单元内部的定制互连所代替,总的路由数量因此下降了3倍。采用分段式布线结构,每个e单元的驱动输出端被用来实现单元与单元之间的布线。总布线的减少,加上独特地使用驱动输出端,使得布线和定时合并变得非常简化。
为了采用单一过孔层Via6编程。每个e单元的输入端、输出端和内部可编程跳线触点全部被引到第6层金属层。第6层金属层还汇集了第4、第5层各个线段的触点。第4和第5层是纵横交错的长金属段,用于连接不同位置上的e单元。第6和第7层是纵横交错的短金属段。正是这种通用统一的路由架构,使得标准的e单元基本阵列可以用单一过孔掩模层来配置。通过配置过孔层(V6-7)连接第6和第7层金属层,标准单元设计中所需要的各种各样的路由可以用eASIC中固定结构的金属路由来替代。参见图4与图5。
图4:eASIC结构中第4层与第5层金属局部示意图。
图5:eASIC结构中第6层与第7层之间的过孔连接示意图
采用有规律的相同逻辑单元排列结构对制作工艺也具有很大的好处。有规律的结构诸如SRAM是晶圆厂的工艺驱动器。eASIC逻辑结构的规律性保证了这种技术可以比其他随机的逻辑技术更快地迁移到更先进工艺节点上。
简而言之,eASIC结构特点包括:一是粗化基本逻辑单元颗粒,即以e单元为最小颗粒,有规则地重复排列成一个16×16的单位,再用8个e单位组成更大的基本逻辑块eCore。二是颗粒内部的连接通过最底下2层金属连接,以节省硅片面积,增加密度。三是巧妙地将有规律排列基本逻辑阵列块与RAM存储器块、时钟树、扫描链、锁相环等集成起来,标准化金属布线路由,将无规律的路由规律化,以便用过孔将栅格状多层纵横交错的分段式金属线连接起来。
eASIC Nextreme系列产品
Nextreme系列产品是eASIC的第二代产品,采用90nm工艺,目前有6种规格。其规模相当于ASIC的35~525万门;内部存储器为416K~5,600Kb。还可以将e单元配置成分布式存储器eRAM,最多可扩展双倍。系统性能高达350MHz;68~852个可配置I/O口;包括常用的LVTTL、LVCMOS、PCI,HSTL、SSTL、CTL、GTL以及Serdes、1Gbps LVDS和667Mbps DDR2与400Mbps DDR1;多达10个锁相环PLL和32内部时钟域;多达20DLL;动态阻抗匹配;内置扫描链;可配置嵌入式微处理器(eMμ)8051;内置逻辑和存储其BIST;JTAG边界和内部扫描;用于配置逻辑和用户数据存储的外部SPI串行存储器接口;封装形式BGA、FCBGA、TQFP、PQFP。
1. 产品特点
a. 从RTL到ASIC芯片只要1个月;
b. 零NRE;
c. 与ASIC一样的性能;
d. 与ASIC类似的单价,或者同等FPGA单价的10%~50%;
e. 像FPGA那样用比特流重复编程逻辑单元;
f. 无最小批量要求。
2. 设计生产流程
eASIC提供一整套价廉物美的强大设计软件工具。该软件不用工程师漫长的直接手工布线,大大缩短了开发时间和费用。Nextreme系列产品使用MAGMA的CAE工具生成网表。MAGMA设计流程生成一个由eASIC设计工具套件eTool布线的完全设计。Nextreme设计工具支持Windows,Linux和Solaris。使用eASIC的仿真单元库,仿真和静态时序分析STA可以在任一中间网表或最终网表上进行。后端仿真和静态时序使用eTool布线器产生的寄生注释数据。设计流程简化图见图6。
图 6:用于eASIC的设计流程图
eTool套件支持多重仿真和主流EDA工具提供商的STA。其功能包括:定义、辅助、建议时钟域分配;提供放置bRAM组的布版尺寸;允许并建议包括电源在内的I/O布置;允许初始布局规划;允许保留bRAM和eCore块。
采用eTools软件,用户可以快速有效地在Nextreme器件上实现自己的设计。eTools用后端综合Verilog网表调用。该工具协助设计者从布局到最后实现。在流程的每个步骤,通过一个交互式图形接口(GUI),提供直接兼容性反馈(如I/O口分组,时钟结构等)。此外,eDK工具向用户提供阵列、存储器和I/O选择,并根据需要添置电源引脚。
仿真和静态定时完成之后,eASIC的eTools工具产生最终的过孔掩模数据和e单元LUT配置比特流数据。过孔编程数据用来制作布线。LUT比特流配置数据按一定格式存放在外部SPI闪存存储器里面,用来编程实际芯片上的e单元查询表LUT里面的内容。
eGenPLD软件能使用户将PLD宏嵌入到Nextreme设计中,在器件制作出来后再定义并重新定义应用逻辑。嵌入式PLD是在基于SRAM的LUT逻辑之外产生的。在PLD宏定义之后,用户在eGenPLD工具中描述PLD逻辑。这里产生的比特流需要与原来初始化器件的比特流融合在一起。修改PLD功能时候,eGenPLD产生一个更新的配置比特流,在同样的器件上实现不同的功能。
在eASIC Nextreme系列产品中,逻辑门可以与存储器灵活地交互。这是由eGenMem工具来实现的。它是一个用户友好的eRAM模块产生器。在器件上定义双口RAM块,eGenMem是一个必不可少的工具。
局部逻辑功能的修改可以使用e单元Editor实现。e单元Editor是一种网表层互动工具。通过修改底层的e单元LUT内容,设计者可以修改逻辑部分。因此,e单元Editor允许用户分析检查硅片上不完善的地方,并在无需重新制造器件的情况下,可以做有限的逻辑设计修正。修改过程如下:首先,设计者找到有问题的区域,然后修改e单元LUT内容,以改变逻辑函数,断掉某个引脚或者“切断”某个信号。在完成编辑之后,设计者可以生成一个修改的仿真网表和一个新的比特流配置文件以重新编程硅片。
Nextreme提供一种组合型生产方式:快速的样片制作以验证设计,低成本的大批量生产。使用直接写光束制作样片,只需要3周时间。用这种方法做出来的样片与单层掩模生产出来的器件是一样的。虽然制作方法不同,但都使用单一过孔层实现分段式布线,而且用的是同样的晶元和封装测试工艺。
本文小结
利用eASIC可以解决中国刚起步的IC设计公司的资金瓶颈;通过其类似FPGA的可编程灵活性,可以提高设计更新能力。由于其单片价格类似ASIC,从而将无可非议地取代批量FPGA芯片。对于仅有千片批量应直接采用eASIC来实现;已经做好了FPGA设计的产品,也可以通过工具转换成eASIC;另外,为了减少风险,比较复杂的ASIC也可以用eASIC来实现。 |