变异性感知全局布局以提高碳纳米管场效应晶体管电路的时序良率
1 引言
随着传统的基于硅的CMOS技术向亚10纳米区域发展,我们正接近基于硅的CMOS器件的物理极限。在这种情况下,许多新兴器件正在被积极研究。其中一种器件是碳纳米管场效应晶体管(CNFET)。图1(a)展示了CNFET的器件结构。它与传统的基于硅的MOSFET类似,不同之处在于CNFET的沟道由碳纳米管束(CNT)组成。与基于硅的MOSFET器件相比,CNFET器件的主要优势在于更高的驱动电流密度和更低的功耗[7]。据报道,CNFET电路在能效延迟积(被视为能效的度量)方面,相较于传统的基于硅的CMOS电路,潜在提升可超过一个数量级[19]。
然而,设计超大规模CNFET电路仍需克服若干挑战[10, 23, 37]。主要挑战包括CNT密度变化、金属型CNT的存在以及CNT错位。近年来,CNT合成工艺和CNFET电路设计方法的进展已能够解决金属型CNT的存在[15, 21]和CNT错位的问题[18, 22]。然而,CNT密度变化仍然是影响CNFET电路可靠性和性能的主要问题,如参考文献[26, 34]中所建模和分析。
碳纳米管密度变化是由于在CNT制造过程中缺乏精确控制所致[12, 39]。CNT排列的一个示例如图1(b)所示,从中可以看出任意两个相邻CNT之间的距离变化显著。密度变化的直接后果是碳纳米管场效应晶体管的驱动电流存在较大变化,因为电流与CNFET门电路下方覆盖的碳纳米管数量成正比。因此,CNFET电路具有较大的延迟变化[26, 38],导致时序良率下降[9, 12]。
一些先前的研究探索了布局技术,以克服由碳纳米管密度变化引起的电路延迟变化过大的问题。这些研究利用了CNFET电路的一个特殊性质。从图2可以看出,如果两个碳纳米管场效应晶体管与碳纳米管生长方向平行排列,即它们的沟道覆盖相同的碳纳米管束,则它们的电学特性高度相关。另一方面,如果两个碳纳米管场效应晶体管的沟道覆盖不同的碳纳米管束,则它们的电学特性高度独立。这种特殊性质被称为非对称空间相关性[39]。
在参考文献[1]中,作者提出了一种路径修复方法,在详细布局阶段将每个近关键路径上的门电路沿碳纳米管生长方向分布到不同的列上。通过这种方法,有效地减少了路径延迟的变化。然而,由于该方法仅在详细布局阶段移动门电路,因此优化空间有限。此外,作者未考虑互连延迟,即由互连导线寄生参数引起的延迟,而根据我们的研究,互连延迟对电路延迟变化有较大贡献。在我们之前的工作[31]中,我们提出了一种时序驱动的全局布局技术,以优化碳纳米管场效应晶体管门电路在关键路径上的位置。我们在力导向布局框架中引入了一种新的分布力,并考虑了互连延迟。然而,尽管分布力能够移动门电路以减少路径延迟的方差,但也可能增加路径延迟的均值,从而降低时序良率。
在本研究中,为解决以往工作的不足,我们提出了针对CNFET电路的新型变异性感知全局布局方法。所提出的方法同时考虑了门延迟和互连延迟的均值与方差。为了有效优化统计电路延迟,我们首先建立了一阶级延迟标准差的一阶近似模型,其中一级由单个门电路及其驱动的网络组成。基于该级延迟近似模型,我们进一步开发了用于段的统计延迟度量。
碳纳米管场效应晶体管的三维视图 [27];(b) 定向碳纳米管生长 [20])
当两个CNFET沿碳纳米管生长方向对齐时,它们之间具有高度相关性;(b) 当两个CNFET未沿碳纳米管生长方向对齐时,它们之间几乎不相关)
门电路。该延迟度量由该段的延迟均值和标准差组成。基于统计延迟度量,我们提出了首个考虑工艺变异的全局布局方法,这是一种基于段的方法。该方法识别电路中门电路的统计关键段,并优化每一段的统计延迟度量。通过对基于段的方法进行若干修改,我们提出了第二种全局布局方法,即基于路径的方法。实验结果表明,所提出的方法显著提高了电路时序良率。
总之,我们工作的主要贡献如下。
- 我们提出了一种用于CNFET电路中门电路段的新颖统计延迟度量。该度量包含线段延迟的均值和标准差,其中标准差由级延迟标准差的一阶近似推导而来。该度量考虑了碳纳米管密度变化的非对称空间相关性。
- 我们提出了一种基于段的考虑变异的全局布局算法,以提高CNFET电路的时序良率。该算法采用基于段的优化技术,重新定位一组统计关键段中的门电路,并优化这些关键段的统计延迟度量。
- 通过对基于段的方法进行一些改进,我们还提出了一种基于路径的变异感知全局布局方法。
本文的其余部分组织如下。在第2节中,我们介绍碳纳米管密度变化、CNFET标准单元库以及CNFET电路的功能良率和时序良率的背景知识。在第3节中,我们提出针对CNFET标准单元的时序模型。然后,基于该标准单元的时序模型,在第4节中,我们提出针对电路中一个级(由门电路及其驱动的网络组成)的时序模型。接着,基于该级的时序模型,在第5节中,我们提出针对段的统计延迟度量。在第6和第7节中,我们分别详细阐述所提出的基于段和基于路径的变异感知全局布局算法。在第8节中,我们展示实验结果。最后,在第9节中对本文进行总结。
2 背景
在本节中,我们介绍与碳纳米管密度变化相关的背景、本研究中使用的CNFET标准单元库,以及CNFET电路的功能良率和时序良率。通过该介绍,我们展示了本研究中选择的关键工艺参数和设计参数。我们还表明,在所选参数下,功能良率并非主要问题,因此提高CNFET电路的时序良率具有重要意义。
2.1 碳纳米管密度变化
由于碳纳米管是自组装形成的,无法精确控制其位置[39],碳纳米管密度(定义为单位宽度内的碳纳米管数量)在芯片的不同位置上存在变化。然而,与基于硅的CMOS技术不同,这种变化表现出强烈的非对称空间相关性。沿着碳纳米管生长方向的不同位置,碳纳米管密度高度相关;而在不沿碳纳米管生长方向的位置上,碳纳米管密度则高度独立。图3展示了碳纳米管密度变化的这一特殊模式。图中,碳纳米管由灰色线表示。从图中可以看出,碳纳米管密度在水平方向上没有变化,而在垂直方向上发生变化。
碳纳米管密度变化取决于碳纳米管工艺参数。在本研究中,我们采用了近期文献中的碳纳米管场效应晶体管工艺参数。主要的碳纳米管工艺参数列于表1。
沟道中使用的理想碳纳米管应为半导体型。然而,由于制造工艺的不完善,一些碳纳米管会呈现金属型。我们假设一根碳纳米管的呈金属型的概率为pm = 0.01[17]。幸运的是,目前已存在多种有效的方法,可去除高达99.99%的金属碳纳米管[21, 35]。因此,在本研究中,我们假设所有金属碳纳米管均已被去除,且pRm = 1。
文献[38]中的工作表明,给定宽度W所覆盖的碳纳米管数量n(W)大致服从形式为N(W/μs, Wσ²s/μ³s)的正态分布,其中μs和σs分别是相邻碳纳米管之间的距离的均值和标准差。通过金属型碳纳米管去除工艺,所有金属碳纳米管被移除,同时一小部分半导体碳纳米管也被除。我们最终关注的是金属型碳纳米管去除工艺后半导体碳纳米管数量的分布。在给定宽度W内覆盖的半导体碳纳米管数量ns(W)也近似服从正态分布形式
$$
ns(W) \sim N\left(\frac{W}{\mu_{s,\text{post}}}, \frac{W\sigma^2_{s,\text{post}}}{\mu^3_{s,\text{post}}}\right),
$$
其中μs,post和σs,post是经过金属型碳纳米管去除工艺后相邻半导体碳纳米管之间的距离的均值和标准差。
通过使用表1中的参数以及参考文献[39]中提出的方法,我们可以推导出
$$
\mu_{s,\text{post}} = 4.253\text{nm}, \quad \sigma_{s,\text{post}} = 3.085\text{nm}.
$$
由于在我们的研究中,假设由于金属型碳纳米管去除工艺的存在,金属碳纳米管不存在,因此所有碳纳米管均为半导体型。在下文中,当我们提到碳纳米管时,指的是半导体型碳纳米管。
2.2 碳纳米管场效应晶体管标准单元库
标准单元库为设计数字电路提供了基本构建模块。因此,要设计CNFET电路,需要一个碳纳米管场效应晶体管标准单元库。由于目前没有成熟的碳纳米管场效应晶体管标准单元库可用,我们采用南盖特45nm标准单元库[16]作为参考来构建碳纳米管场效应晶体管标准单元。
在我们的研究中,我们考虑了两个工艺节点:14nm和10nm。我们在表2中列出了14nm和10nm碳纳米管场效应晶体管标准单元库的一些重要设计参数。对于14nm/10nm碳纳米管场效应晶体管标准单元库中的每个标准单元,我们设计了其原理图、单元尺寸以及HSPICE模型。每个单元的原理图设计参考了Nangate 45nm标准单元库[16]。每个单元的尺寸是根据表2中标准单元高度的比例(即14nm和10nm技术节点分别为0.768μm和0.679μm)相对于Nangate标准单元库的标准单元高度(即1.4μm)进行缩放得到的。我们通过以下方式获得每个标准单元的HSPICE模型:
应用斯坦福大学虚拟源碳纳米管场效应晶体管HSPICE模型[30]到构成整个标准单元的每个碳纳米管场效应晶体管。
根据南盖特库的布局样式,栅极通道与Vdd/GND电源线平行。因此,对于我们库中的每个CNFET单元,碳纳米管的生长方向与标准单元排列的行方向平行。这种布局样式的CNFET反相器如图4所示。注意,P型和N型碳纳米管场效应晶体管覆盖不同的碳纳米管束。
参考文献[2]最近的研究表明,通过使用对齐有源区布局风格,可以提高CNFET电路的功能良率。因此,我们在设计碳纳米管场效应晶体管标准单元时也采用了对齐有源区布局风格。在这种布局风格中,上拉网络(PUN)中的碳纳米管场效应晶体管尽可能地相互关联,下拉网络(PDN)中的碳纳米管场效应晶体管也是如此。每个标准单元中碳纳米管场效应晶体管的宽度由以下因素决定
使得当每个碳纳米管场效应晶体管的碳纳米管数量选择为标称值时,单元的上拉网络和下拉网络具有相同的延迟。
根据表2,对于14nm和10nm工艺节点,PUN或PDN中CNFET的最小宽度分别设置为32nm和28.8nm。这些最小宽度能够为CNFET电路提供相对较高的功能良率,我们将在第2.3节中展示这一点。对于14nm和10nm工艺节点,最大CNFET宽度分别设置为280nm和240nm。给定最大CNFET宽度后,当我们构建具有较大驱动强度的碳纳米管场效应晶体管标准单元时,如果CNFET的有效宽度超过该最大值,则采用晶体管折叠来构建该CNFET。
2.3 功能良率和时序良率
第2.1节中引入的碳纳米管密度变化会影响CNFET电路的功能良率和时序良率。功能良率是指制造出的芯片中能正确工作的比例。时序良率是指制造出的芯片中满足给定电路延迟约束的比例。
由于碳纳米管密度变化,一个碳纳米管场效应晶体管可能包含零根碳纳米管。由于碳纳米管场效应晶体管使用碳纳米管作为沟道,含有零根碳纳米管的碳纳米管场效应晶体管将无法正常工作。如果一个电路中至少有一个碳纳米管场效应晶体管含有零根碳纳米管,则该电路会发生功能故障。因此,碳纳米管密度变化可能导致CNFET电路的功能良率损失。另一方面,对于功能正确的电路,由于碳纳米管密度变化,其延迟可能大于所需值。因此,碳纳米管密度变化也可能导致CNFET电路的时序良率损失。
为了设计实用的CNFET电路,首要目标是保证足够高的功能良率。这可以通过为最小CNFET宽度选择一个足够大的值来实现。正如我们在第2.2节中提到的,对于14nm和10nm工艺节点,最小CNFET宽度分别设置为32nm和28.8nm。在本研究中,最大的基准电路来自参考文献[24]的“M1‐CORE”。根据参考文献[36]中的功能良率分析方法,在选定的最小CNFET宽度以及表1中的碳纳米管工艺参数下,该基准电路的功能良率在14nm和10nm工艺节点下分别至少达到95.2%和90.0%。对于本研究中使用的其他较小的基准电路,其功能良率更高。因此,将14nm和10nm工艺节点的最小CNFET宽度分别设为32nm和28.8nm,可确保相对较高的功能良率,因而功能良率不是主要问题。在此情况下,我们的主要目标是优化CNFET电路的时序良率。
3 场效应管延迟模型用于CNFET标准单元
为了评估CNFET电路的时序,必须对每个CNFET标准单元的时序信息进行表征。在本节中,我们首先建立CNFET标准单元的确定性延迟模型,在该模型中假设CNFET标准单元的PUN和PDN中的碳纳米管数量是固定的。然后,基于这些确定性模型,我们进一步建立CNFET标准单元的统计延迟模型,在该模型中假设碳纳米管数量是随机的。在确定性延迟模型和统计延迟模型中,我们都对库中每个CNFET标准单元的门固有延迟d0、输出电阻Rout、输入斜率系数k以及输入电容Cin进行表征。
3.1 确定性门延迟模型
在本节中,我们为碳纳米管场效应晶体管标准单元建立了确定性门延迟模型。这些模型将在后续用于获得CNFET单元的统计门延迟模型。
对于传统的互补金属氧化物半导体门电路,参考文献[6]提出了以下门延迟模型:
$$
d_{gate} = d_0 + R_{out} \cdot C_{load} + k \cdot S_{in},
$$
其中,d0是固有门延迟,Rout是门电路的输出电阻,Cload是门电路输出端的负载电容,k是常数系数,Sin是输入斜率。注意,标准单元的自负载电容对其延迟的影响已包含在固有门延迟d0中。Cload是标准单元输出端的总负载电容,不包括其自负载电容。因此,Cload与其驱动的标准单元无关。
在我们的工作中,我们也应用公式(3)来建模CNFET标准单元的门延迟。值d0, Rout和k是每个特定CNFET标准单元的固有参数。此外,由于碳纳米管场效应晶体管沟道中的碳纳米管数量会影响其驱动电流和延迟,因此d0, Rout和k的值也依赖于碳纳米管数量。为了获得每个CNFET标准单元的确定性门延迟模型,我们针对不同的碳纳米管数量对d0, Rout和k的值进行表征,并将表征结果存储在查找表中。
实际上,根据CNFET单元的PUN或PDN是否导通,d0和Rout的值分别与PUN或PDN中的碳纳米管数量相关。因此,我们将固有门延迟进一步区分为PUN导通时的d0,PUN,以及PDN导通时的d0,PDN。类似地,我们将输出电阻区分为PUN导通时的Rout,PUN,以及PDN导通时的Rout,PDN。对于每个CNFET标准单元,我们针对单元PUN中不同的碳纳米管数量表征d0,PUN和Rout,PUN;针对单元PDN中不同的碳纳米管数量表征d0,PDN和Rout,PDN。根据我们的表征结果发现,系数k的值几乎不受单元中PUN和PDN碳纳米管数量的影响。因此,我们假设单元的PUN和PDN采用标称碳纳米管数量来表征系数k。这里的标称碳纳米管数量是通过假设任意两个相邻CNT之间的距离为μs,post = 4.253nm得到的(见公式(2))。
我们对每个CNFET标准单元的HSPICE模型进行仿真,该模型在第2.2节中描述,并获得常数系数k以及每个CNFET标准单元的d0,PUN、d0,PDN、Rout,PUN和Rout,PDN与碳纳米管数量的关系。结果存储在相应的查找表中。
为了使用确定性门延迟模型,当给定一个特定的CNFET标准单元、其上拉网络和下拉网络中的碳纳米管数量、输入转换速率Sin以及输出电容Cload时,我们可以得到门延迟为
$$
d_{gate} = \max{d_{0,PUN} + R_{out,PUN} \cdot C_{load} + k \cdot S_{in}, d_{0,PDN} + R_{out,PDN} \cdot C_{load} + k \cdot S_{in}},
$$
其中,值d0,PUN、d0,PDN、Rout,PUN、Rout,PDN和k根据单元类型和碳纳米管数量从查找表中获取。需要注意的是,在我们的工作中,我们执行拓扑时序分析,忽略门电路的逻辑功能。因此,门延迟取上拉网络延迟和下拉网络延迟中的较大值。
我们为每个标准单元表征的另一个重要参数是输入电容Cin。这会贡献到每个驱动门的负载电容Cload,从而影响CNFET电路的时序。为了表征单元的输入电容,针对该单元的一个输入引脚,我们获取由该引脚控制的碳纳米管场效应晶体管。然后,利用斯坦福大学虚拟源碳纳米管场效应晶体管Matlab模型,通过数值方法获得在不同上拉网络碳纳米管数量下,标准单元上拉网络中这些碳纳米管场效应晶体管的总输入电容[30]。同样地,也进行相同操作以获得在不同下拉网络碳纳米管数量下,下拉网络中碳纳米管场效应晶体管的总输入电容。在使用输入电容表征结果时,当我们给定一个特定的CNFET标准单元及其上拉网络和下拉网络中的碳纳米管数量时,可以通过将上拉网络和下拉网络在给定碳纳米管数量下的总输入电容相加,得到该标准单元的输入电容。
3.2 统计门延迟模型
为了在本研究中实施统计静态时序分析(SSTA)以指导统计时序优化,我们为碳纳米管场效应晶体管标准单元库中的单元建立了统计时序模型。
在公式(4)所示的延迟模型中,Cload是一个与具体CNFET标准单元无关的变量。最大值操作符中的变量Cload的存在使得进一步的数学处理变得困难。为了简化,我们用以下公式近似公式(4)所示的门延迟:
$$
d_{gate} = \max{d_{0,PUN}, d_{0,PDN}} + \max{R_{out,PUN}, R_{out,PDN}} \cdot C_{load} + k \cdot S_{in}.
$$
可以看出,由公式(5)计算出的值始终是公式(4)计算出的值的上界。我们进一步定义
$$
d_{0,\text{max}} = \max{d_{0,PUN}, d_{0,PDN}}, \quad R_{out,\text{max}} = \max{R_{out,PUN}, R_{out,PDN}}.
$$
然后,公式(5)中所示的门延迟可以进一步表示为
$$
d_{gate} = d_{0,\text{max}} + R_{out,\text{max}} \cdot C_{load} + k \cdot S_{in}.
$$
为简便起见,在下文中,我们将d0,max称为给定门电路的固有门延迟,将Rout,max称为该门电路的输出电阻。
在统计门延迟模型中,d0,max和Rout,max是随机变量。正如我们稍后将展示的,我们提出的CNFET电路的统计时序模型依赖于每个CNFET标准单元的d0,max和Rout,max这两个随机变量的均值和标准差。为了表征这些值,对于每个CNFET标准单元,我们根据公式(1)所示的正态分布,随机生成10,000组PUN和PDN中的碳纳米管数量。对于每组碳纳米管数量,我们首先通过查找表获得d0,PUN、d0,PDN、Rout,PUN和Rout,PDN的值,然后通过公式(6)得到d0,max和Rout,max的值。接着,d0,max(Rout,max)的均值和标准差即为10,000个d0,max(Rout,max)样本的均值和标准差。
在统计时序模型中,输入电容Cin也是一个随机变量。正如我们将在后面展示的,我们提出的CNFET电路的统计时序模型也依赖于每个碳纳米管场效应晶体管标准单元的随机变量Cin的均值和标准差。我们还使用随机仿真结合查表法来获取每个碳纳米管场效应晶体管标准单元的Cin的均值和标准差。
4 级延迟模型
基于第3节中介绍的延迟模型,本节中我们提出级延迟模型,该模型将在下面的第5节中用于获得段的统计延迟度量。级延迟定义为从驱动门的输入到被驱动门的输入之间的延迟。它被计算为驱动门延迟与互连导线引起的延迟之和。它给出了电路中路径一级的延迟。在本节中,我们首先描述如何对级延迟进行建模。然后,我们给出级延迟的均值和标准差的简化近似,这在计算段的统计延迟度量时将起到重要作用。
4.1 建模阶段延迟
我们使用图5(a)中的示例来说明级延迟的建模。假设驱动门是门电路Gi,它驱动mi个门电路Gi1,…,Gimi,其中i1,…,imi是这mi个门电路的索引。我们评估从驱动门Gi的输入到输入的门电路Gil在特定1 ≤ l ≤ mi下的情况。驱动门与被驱动门之间的互连导线被建模为图5(b)所示的RC树,其中连接驱动门和每个被驱动门的导线均使用π‐模型[32]表示。由驱动门的输出电阻和互连导线引起的延迟通过将埃尔莫尔延迟模型应用于RC树[8]来获得。然后,级延迟是门固有延迟、由输入斜率引起的延迟以及由驱动门的输出电阻和互连导线引起的延迟之和。对于本例,级延迟为
$$
d_{st,i} = d_{0,\text{max},i} + k_i \cdot S_{in,i} + R_{out,\text{max},i} \cdot \left(\sum_{j=1}^{m_i} C_{w,i,ij} + C_{in,ij}\right) + R_{w,i,il} \cdot \left(\frac{1}{2} C_{w,i,il} + C_{in,il}\right),
$$
其中d0,max,i, ki, Sin,i和Rout,max,i分别是驱动门Gi的固有延迟、输入斜率系数、输入转换速率和输出电阻,Cw,i,ij和Rw,i,ij分别是驱动门Gi与被驱动门Gij之间互连导线的寄生电容和电阻,而Cin,ij是被驱动门Gij的输入电容。
寄生的互连导线的寄生电容Cw,i,j和电阻Rw,i,j计算如下
$$
C_{w,i,j} = c_{unit} \cdot HPWL_{i,j}, \quad R_{w,i,j} = r_{unit} \cdot HPWL_{i,j},
$$
其中cunit和runit分别为互连导线单位长度的寄生电容和电阻,HPWLi,j是门电路Gi和Gj[6]之间的半周长线长(HPWL)。由于在全局布局阶段尚未进行布线,互连导线的精确信息不可获得,因此我们只能对互连寄生参数进行估计。由于半周长线长(HPWL)在全局布局期间广泛用于延迟估计,[6, 29],我们在级延迟时序模型中使用它来估计互连导线长度。
4.2 级延迟的均值和标准差
在本节中,我们给出了工作中所用的级延迟均值和标准差的简化近似方法。这些简化近似随后被用于简化段的所提出统计延迟度量的评估以及统计静态时序分析。然而,它们足够精确,可为我们的优化流程提供指导。
我们用级延迟的标称值来近似级延迟的均值,即
$$
\mu(d_{st,i}) \approx d_{st,i}^{\text{nom}},
$$
其中dst,i^nom通过公式(8)计算,使用的参数d0,max,i,Rout,max,i和Cin的i均值,这些参数由第3.2节所述方法表征。接下来,我们展示如何获得级延迟标准差的近似值。根据公式(8)中级延迟的表达式,我们可以得到级延迟的标准差为
$$
\sigma_1 = \sigma(d_{st,i}) = \sigma\left(d_{0,\text{max},i} + k_i \cdot S_{in,i} + R_{out,\text{max},i} \cdot \left(\sum_{j=1}^{m_i} C_{w,i,ij} + C_{in,ij}\right) + R_{w,i,il} \cdot \left(\frac{1}{2} C_{w,i,il} + C_{in,il}\right)\right).
$$
在上述方程中,固有门延迟d0,max,i和输出电阻Rout,max,i是取决于驱动门中碳纳米管数量的随机变量。输入电容Cin,ij’s是取决于被驱动门中碳纳米管数量的随机变量。方程中的其他变量为常数。
在我们对碳纳米管场效应晶体管标准单元的统计时序表征中发现,驱动门的输出电阻的标准差(即σ(Rout,max,i))远大于驱动门的固有门延迟以及被驱动门的输入电容的标准差(即σ(d0,max,i)和σ(Cin,ij))。因此,我们提出以下针对级延迟标准差的近似方法,
$$
\sigma_2 = \sigma(R_{out,\text{max},i}) \cdot \left(\sum_{j=1}^{m_i} C_{w,i,ij} + \mu(C_{in,ij})\right),
$$
其中μ(Cin,ij)是输入电容Cin的均值,ij该值由第3.2节所述方法确定。
为了验证σ2在公式(11)中所示的表达式是σ1在公式(10)中所示的值的一个良好近似,我们对来自参考文献[24]的基准电路“PID控制器”进行了蒙特卡洛仿真,该电路包含3,102个网络。我们使用了14纳米碳纳米管场效应晶体管标准单元库。通过全局布局确定了该基准电路中每个门电路的位置。对于该基准电路中的每个网络,我们为驱动门和被驱动门随机生成了1,000组碳纳米管数量,并基于这1,000个样本计算了标准差σ1和σ2。然后,我们得到了所有3,102个网络的μ(·)的均值以及σ(·)的标准差。结果如下
$$
\mu(\sigma_1) = 7.0017, \quad \sigma(\sigma_1) = 26.9360,
$$
$$
\mu(\sigma_2) = 6.7920, \quad \sigma(\sigma_2) = 26.9345.
$$
可以看出,σ2的均值和标准差与σ1各自的值非常接近。此外,我们还计算了每个网络的绝对误差,定义为|σ2 − σ1|。所有网络的绝对误差的均值和标准差分别为0.2100和0.1720。与公式(12)中所示的σ1的均值和标准差相比,这些值非常小。这表明σ2是对σ1的一个良好近似。
因此,我们得出结论
$$
\sigma(d_{st,i}) \approx \sigma(R_{out,\text{max},i}) \cdot \left(\sum_{j=1}^{m_i} C_{w,i,ij} + \mu(C_{in,ij})\right) = \sigma(R_{out,\text{max},i}) \cdot C_{load,i}^{\text{nom}},
$$
其中我们定义
$$
C_{load,i}^{\text{nom}} = \sum_{j=1}^{m_i} C_{w,i,ij} + \mu(C_{in,ij}).
$$
注意,驱动门的输出电阻Rout,max,i是通过我们针对每个单独的CNFET标准单元提出的统计门延迟表征方法获得的,该方法在第3.2节中进行了描述。公式(14)还表明,驱动门的输出电阻的变化主导了级延迟的变化。
综上所述,公式(9)和(14)分别给出了级延迟的均值和标准差的近似值。这些将在后续用于我们的路径段延迟的统计度量中。
5 路径段的统计延迟度量
段是电路中路径的一部分,由一系列相连的门电路组成。在本节中,我们将介绍一种用于段的统计延迟度量,该度量将用于我们的统计时序优化过程。统计延迟度量的计算依赖于CNFET电路的相关矩阵,接下来我们将介绍该矩阵。
5.1 CNFET电路的相关矩阵
CNFET电路的空间变化大于传统硅基CMOS电路。然而,如我们在第2.1节中提到的,CNFET电路的变化表现出独特的非对称空间相关性。这一特性为我们提供了探索新方法的机会,以减少碳纳米管密度变化导致的CNFET电路性能下降。
在我们的工作中,我们使用相关矩阵M来表征CNFET电路的空间变化。给定一组N个CNFET门电路G1,…,GN及其全局布局,相关矩阵是一个N×N矩阵,其构造方式如下:对于两个CNFET门电路Gi和Gj,如果它们的几何中心属于基于行的标准单元布局中的同一行,则将它们视为完全相关,并将矩阵元素Mi,j和Mj,i设为1,其中Mi,j表示矩阵M第i行第j列的元素。否则,将元素Mi,j和Mj,i设为0。所有Mi,i’s的值均设为1。我们通过以下示例说明如何构建相关矩阵。
例5.1。 考虑图3所示的全局布局。图中灰色线表示水平生长的碳纳米管。红色虚线表示基于行的标准单元布局中的行边界。门电路G1和G2的几何中心位于同一行,门电路G5和G6也是如此。因此,项M1,2 = M2,1 = M5,6 = M6,5 = 1。然而,门电路G3和G4的几何中心位于不同的行。因此,项M3,4 = M4,3 = 0。这6个门电路的完整相关矩阵为
$$
M = \begin{bmatrix}
1 & 1 & 0 & 0 & 0 & 0 \
1 & 1 & 0 & 0 & 0 & 0 \
0 & 0 & 1 & 0 & 0 & 0 \
0 & 0 & 0 & 1 & 0 & 0 \
0 & 0 & 0 & 0 & 1 & 1 \
0 & 0 & 0 & 0 & 1 & 1 \
\end{bmatrix}.
$$
5.2 段的统计延迟度量
在本节中,我们提出了针对一段的统计延迟度量。在统计学中,对于单变量上的给定随机分布和一个百分比k,我们可以得到一个值α,使得区间[μ − ασ, μ + ασ]包含遵循该随机分布的总体中的k百分比,其中μ是分布的均值,σ是分布的标准差。例如,对于正态分布和k = 99.7,我们有α = 3。
考虑到碳纳米管密度变化,CNFET电路的延迟是一个随机变量。假设电路延迟的均值和标准差分别为μckt和σckt。由于我们希望提高时序良率,这相当于减小对应于给定电路良率的μckt + ασckt之和。因此,我们可以将μckt + ασckt作为最小化目标的代价函数。为简便起见,我们在实验中选择α = 3。
然而,由于均值μckt和标准差σckt依赖于电路中的所有门电路,因此计算它们需要较大的计算开销。此外,直接优化μckt + ασckt较为困难。作为替代方法,我们选择统计关键段,并最小化它们的μ(dseg) + ασ(dseg),其中dseg表示一段的延迟。该过程能有效提升整个电路的统计性能。我们将μ(dseg) + ασ(dseg)称为一段的统计延迟度量。接下来,我们将推导μ(dseg)和σ(dseg)的表达式。
假设一个段中有n个门电路G1, G2,…,Gn。每个门电路驱动该段中的一个级。那么,该段延迟dseg等于所有级的级延迟之和,即
$$
d_{seg} = \sum_{i=1}^{n} d_{st,i},
$$
其中dst,i由公式(8)计算得出。
根据公式(9),段延迟的均值为
$$
\mu(d_{seg}) = \mu\left(\sum_{i=1}^{n} d_{st,i}\right) = \sum_{
i=1}^{n} \mu(d_{st,i}) \approx \sum_{i=1}^{n} d_{st,i}^{\text{nom}}.
$$
线段延迟的方差是
$$
\sigma^2(d_{seg}) = \sigma^2\left(\sum_{i=1}^{n} d_{st,i}\right) = \sum_{i=1}^{n} \sigma^2(d_{st,i}) + 2 \sum_{1 \leq i < j \leq n} \sigma(d_{st,i})\sigma(d_{st,j})\rho(d_{st,i}, d_{st,j}),
$$
其中ρ(X, Y)表示两个随机变量X和Y之间的相关系数。由公式(14)可进一步得到
$$
\sigma^2(d_{seg}) \approx \sum_{i=1}^{n} (C_{load,i}^{\text{nom}})^2 \sigma^2(R_{out,\text{max},i}) + 2 \sum_{1 \leq i < j \leq n} C_{load,i}^{\text{nom}} C_{load,j}^{\text{nom}} \sigma(R_{out,\text{max},i})\sigma(R_{out,\text{max},j})\rho(d_{st,i}, d_{st,j}).
$$
由于我们在第4.2节中已表明,驱动门的输出电阻的变化主导了dst,i的变化,我们有
$$
\rho(d_{st,i}, d_{st,j}) \approx \rho(C_{load,i}^{\text{nom}} \cdot R_{out,\text{max},i}, C_{load,j}^{\text{nom}} \cdot R_{out,\text{max},j}) = \rho(R_{out,\text{max},i}, R_{out,\text{max},j}).
$$
由于CNFET电路的非对称空间相关性,当门电路Gi和Gj的几何中心位于同一行时,我们将ρ(Rout,max,i, Rout,max,j)视为1,否则为0。因此,ρ(Rout,max,i, Rout,max,j) = Mi,j,其中Mi,j是门电路G1,…,Gn的相关矩阵M中第i行和第j列的元素。
为进一步简化公式(16),对于门电路Gi,我们定义di = C_load,i^nom σ(Rout,max,i),以及向量D = [d1, d2, …, dn]。然后,公式(16)可以简化为
$$
\sigma^2(d_{seg}) \approx D M D^T,
$$
以及线段延迟的标准差是
$$
\sigma(d_{seg}) \approx (D M D^T)^{1/2}.
$$
根据公式(15)和(17),可计算线段的统计延迟度量为
$$
\mu(d_{seg}) + \alpha\sigma(d_{seg}) \approx \sum_{i=1}^{n} d_{st,i}^{\text{nom}} + \alpha \cdot (D M D^T)^{1/2}.
$$
尽管该分析是针对线段进行的,但我们可以对电路中的完整路径进行类似的分析,并推导出计算路径统计延迟度量的类似方法。所提出的针对线段和路径的统计延迟度量将被用于我们的优化流程中。
6 所提出的基于段的全局布局方法
在本节中,我们提出了一种基于线段的变异感知全局布局方法。该方法的一个创新之处在于它是一种基于线段的方法,不同于传统的基于路径或基于网络的全局布局方法。该方法首先识别一组统计关键段,然后对其进行优化。优化目标是统计延迟度量,其由线段延迟的均值和标准差组成。虽然它不等于我们的最终目标——时序良率,但它与时序良率具有强相关性:正如我们将在第8.1节通过蒙特卡洛仿真验证的那样,随着统计延迟度量的降低,电路时序良率会提高。因此,我们选择统计延迟度量作为优化目标。我们首先展示整体流程,然后描述该流程中的三个关键子程序。
6.1 总体流程
我们提出的变异性感知全局布局方法的整体流程如算法1所示。输入为电路网表。在执行初始布局(第1行)后,应用初步的时序驱动的受力导向布局,将所有标准单元分布在布局区域内[28]内(第2行)。当标准单元的平均重叠百分比低于预定义阈值(在我们的实验中设为25%)时,停止初步布局。随后,流程进入优化循环(第3–9行)。在每次迭代开始时,由于前一次迭代中部分门电路的位置发生了变化,因此更新电路中门电路的时序信息。然后,调用统计静态时序分析(SSTA)以获取CNFET电路的统计时序信息(第4行)。我们如何执行SSTA将在第6.2节中详细描述。
该技术的关键思想是调整统计关键段上的门电路位置,以降低通过公式(18)计算得到的统计延迟度量。执行SSTA后,将选择一组统计关键路径段进行优化(第5行)。选择过程将在第6.3节中详细描述。对于每个选定的段,我们优化其上每个门电路的位置(第7行)。此优化过程的细节将在第6.4节中讨论。在所有选定的段优化完成后,开始下一次迭代。
当满足终止条件时,迭代停止。对于该方法,在完成两次迭代后将检查终止准则。如果当前迭代的度量μckt + 3σckt大于前一次迭代的度量,则返回前一次迭代的布局结果。其中,μckt和σckt分别为通过SSTA评估得到的电路延迟的均值和标准差。否则,如果这两次连续迭代之间的度量μckt + 3σckt的差值小于阈值ϵ,则返回当前迭代的布局结果。
请注意,该提出的方法属于全局布局阶段,因为允许标准单元之间的重叠。为了从我们的全局布局方法的输出中生成合法布局,还需进一步应用一种合法化方法。
6.2 统计静态时序分析
此处应用统计静态时序分析来获取CNFET电路的统计时序信息,后续用于选择统计关键段。为了进行精确的SSTA,可以采用基于非正态分布近似的方法[5]。然而,与基于正态分布近似的方法相比,它需要更大的计算开销[3, 4]。由于SSTA仅用于为选择统计关键段提供指导,因此我们并不需要其具有很高的精度。因此,我们将SSTA中使用的基本组件——级延迟分布——近似为正态分布。这减少了SSTA的运行时间,从而降低了我们的优化过程的运行时间。具体而言,我们将随机变量dst,i近似为
$$
d_{st,i} \approx \mu(d_{st,i}) + \sigma(d_{st,i}) \cdot \Delta x,
$$
其中Δx是服从标准正态分布N(μ = 0, σ = 1)的随机变量。此外,将公式(9)和(14)代入公式(19),可得
$$
d_{st,i} \approx d_{st,i}^{\text{nom}} + C_{load,i}^{\text{nom}} \cdot \sigma(R_{out,\text{max},i}) \cdot \Delta x.
$$
我们将公式(20)应用于参考文献[3, 4]中提出的基于模块的SSTA方法,以获得CNFET电路时序图中每个顶点的到达时间分布、所需到达时间分布以及裕量分布。具体而言,在通过前向遍历获得终止顶点处到达时间的均值和标准差μAT和σAT之后,我们将终止顶点的所需到达时间设为β·(μAT + 3σAT),其中β = 0.9,并反向遍历以计算每个顶点的所需到达时间和裕量。然后,计算每个顶点处裕量小于零的概率[13]。该概率被称为该顶点的违例概率,它将指导我们选择统计关键段。
6.3 选择统计关键段
该算法中的一个关键步骤是选择一组统计关键路径段进行优化(算法1的第5行)。本节将描述此步骤。该过程如算法2所示。
在对时序图进行SSTA后,我们首先识别出所有违例概率大于阈值pth的顶点。我们将这些顶点称为统计关键顶点。这些顶点很可能位于关键路径上,应进行优化以提升电路的统计性能,例如时序良率。我们的方法是将这些顶点连接成段,我们称之为统计关键段。
为了实现这一点,我们将每个统计关键顶点扩展为一组统计关键段(第4行)。对于每个顶点,扩展过程(第3行)如下:这是一个迭代过程,从特定的统计关键顶点开始。在每次迭代中,我们始终保留一个包含最后顶点违例概率最大的前m个部分段的列表。在每次迭代开始时,我们首先识别列表中其最后顶点具有最大违例概率的段,并将其从列表中删除。如果该段的最后顶点是原始时序图的终止顶点,或者它不是统计关键顶点,则报告该段;否则,通过将其最后顶点的每个扇出顶点添加到该段中以生成新的段来扩展该段。然后将这些新段插入列表中。列表根据各段最后顶点的违例概率重新排序,并保留前m个段。当报告第一个统计关键段后,扩展过程终止,并将该段加入集合R中(第4行)。
然后,我们选择违例概率最高的前q个源统计关键顶点,并构成集合Q(第6行)。源统计关键顶点是指没有统计关键扇入的统计关键顶点。对于集合Q中的每个顶点,我们使用上述描述的相同扩展过程将其扩展为段(第8行)。我们选取报告的前k个段,并将其加入集合R中(第9行)。最后,我们修剪集合R中被其他段完全包含的段,以精炼待优化的段集合(第11行)。在本研究中,我们设置pth = 0.001,m = 10,q = 5,以及k = 5。这些参数的选择旨在降低运行时间的同时保持优化质量。
由于集合R中这些段上的顶点比其他顶点具有更高的违例概率,因此它们更有可能位于电路的关键路径上。通过优化这些段,电路的时序良率将得到隐式提升。
6.4 优化单段的统计延迟度量
该算法中的另一个关键步骤是优化所选段的统计延迟度量(算法1的第7行)。本节将描述此步骤。详细过程如算法3所示。
最初,基于该段上所有门电路的当前位置,通过公式(18)计算输入段seg的统计延迟度量(第1行)。然后执行一个优化循环(第2–17行)。在每次迭代开始时,记录前一次迭代中该段的统计延迟度量(第3行)。在每次迭代过程中,逐个移动该段上的门电路,以寻找使整个段的统计延迟度量最小的最优位置(第4–16行)。在移动门电路时,使用公式(18)计算该段的统计延迟度量;该计算考虑了该段上门电路之间的空间相关性。在每次迭代结束时,当统计延迟度量被优化后,将延迟度量相对于前一次迭代的改进与阈值th进行比较(在本例中,th选择为2%)。如果改进小于th,则整个优化循环终止;否则,继续进入下一次迭代(第17行)。
在每次迭代中,我们逐个优化每个门电路的位置(第4行)。然而,我们会跳过该段的首尾单元,因为我们希望尽量减少因重新定位该段上的单元而对电路其他部分造成的扰动。此外,如果该段上的某个门电路已经被移动过(因为它属于之前已处理过的统计关键段),那么我们也跳过该门电路。为了搜索某个门电路Gi的最优位置,将其周围区域划分为八个网格,如图6所示。初始时,网格宽度和高度分别设置为该门电路输入和输出网络的边界框宽度和高度的1/3(第5–6行)。将该门电路移至这八个网格各自的中心,并计算对应段的统计延迟度量(第8行)。然后选择在八个网格中产生最小统计延迟度量的网格adj。如果该最小度量小于当前段的统计延迟度量,则将该门电路移至网格adj的中心,并再次在新位置周围的八个网格中搜索更优的位置(第9–11行)。否则,将网格宽度和高度减半,并在尺寸缩小后的八个周围网格中继续搜索更优位置(第13行)。当网格尺寸小于阈值hmin时,停止对该门电路搜索更优位置的过程(第7行)。此时,过程继续处理下一个门电路。由于该过程是贪心的,随着该段上越来越多的门电路被优化,该段的统计延迟度量逐渐降低。
7 所提出的基于路径的全局布局方法
除了上一节提出的基于线段的方法外,本节中,我们提出了一种基于路径的全局布局方法,以提高CNFET电路的时序良率。该方法与基于线段的方法类似,不同之处在于它优化电路的接近关键的路径。该方法的过程如算法4所示。
在此方法中,与基于段的方法类似,我们首先进行初始布局(第1行),然后执行以降低标称延迟为目标的初步时序驱动布局(第2行)。接着,该过程进入优化循环,其终止条件与基于段的方法相同(第3–10行)。在每次迭代开始时,我们应用静态时序分析(STA)来提取电路的接近关键的路径(第4–5行)。标称延迟大于标称电路延迟0.9倍的路径被选为接近关键的路径。如果所选路径的数量超过1,000的上限,则仅保留前1,000条路径。然后,将这些选定的路径按照其标称路径延迟的降序排列(第6行),并按此顺序依次处理。对于每条路径,我们通过应用算法μ + 3σ 3迭代重新定位该路径上的门电路,以最小化所提出的统计延迟度量3(第8行)。注意,如果某个门电路之前已经被移动过,则跳过该门电路。
8 实验结果
在本节中,我们展示了实验结果。我们首先验证了所提出的统计延迟度量的有效性。然后,我们研究了所提出的考虑变异的全局布局方法的性能。
8.1 统计延迟度量的有效性
在本研究中,我们提出了一种用于指导门电路布局的段的统计延迟度量。该度量旨在与时序良率具有相关性。更准确地说,它应与p%时序良率裕量具有相关性:延迟度量越小,p%时序良率裕量越小。其中,p%时序良率裕量是一个值,使得p%的电路的延迟小于该值。
为了进行验证,我们将整个电路的统计延迟度量μckt + 3σckt与两个基准电路“M1‐ALU”和“PID控制器”的p%时序良率裕量进行比较[24]。使用了14纳米碳纳米管场效应晶体管标准单元库。对于每个基准电路,我们应用了基于线段的全局布局方法,并在每次优化迭代结束时收集中间全局布局结果。对于这两个基准电路,优化分别在四次和三次迭代后停止,因此我们分别得到了四个和三个中间全局布局结果。连同输入的全局布局结果,这两个基准电路分别共有五个和四个全局布局结果。对每个结果都应用了SSTA,以评估整个电路的统计延迟度量μckt + 3σckt。对于这些全局布局结果,我们还进行了合法化处理,然后在每一行中随机生成碳纳米管数量,进行了2,000次蒙特卡洛仿真运行。通过此方法,我们获得了电路延迟分布以及95%和99%时序良率裕量。我们绘制了统计延迟度量μckt + 3σckt以及通过蒙特卡洛仿真获得的每个全局布局结果的95%和99%时序良率裕量。结果如图7所示。
从结果可以看出,对于基准电路“PID控制器”,统计电路延迟度量μckt + 3σckt的曲线与95%时序良率裕量的曲线重合。然而,在一般情况下,统计延迟度量并不接近95%或99%时序良率裕量。尽管如此,在一般情况下,随着统计电路延迟度量的减小,95%和99%时序良率裕量也以相同的趋势减小。唯一的例外出现在收敛期:尽管统计延迟度量减小,时序良率裕度可能会略有增加。但这种退化并不显著,可以接受。因此,通过本实验我们证实,尽管统计延迟度量并不接近电路时序良率裕量,但它是一个与时序良率裕度大致成比例的良好估计器。因此,我们使用它来指导电路时序良率的优化。
8.2 所提出的考虑变异的全局布局方法的性能
在本节中,我们研究了所提出的基于分段和基于路径的全局布局方法的性能。
8.2.1 实验设置
我们使用了14nm和10nm碳纳米管场效应晶体管标准单元库进行实验。两个标准单元库的主要参数列于表2中。从OpenCores选取了七个电路[24]以及一个32位乘法器作为我们的基准测试,这些电路列于表3中。基准测试的规模范围从1,096个门电路到16,272个门电路。对每个基准测试进行了四组实验,其实验流程如图8所示。在第一组实验中,采用了文献[28]中提出的时序驱动的力导向全局布局方法,该方法为基线方法。在第二组实验中,采用了来自文献[1]的路径修复方法。需要注意的是,原始的路径修复方法应用于碳纳米管生长方向垂直于标准单元行的CNFET电路,而在本研究中,我们假设碳纳米管生长方向与标准单元行平行。此外,原始的路径修复方法未考虑互连延迟。为了实现公平比较,我们修改了路径修复方法,使其能够处理与我们相同的CNFET电路风格,并考虑互连延迟。在第三和第四次实验中,分别应用了我们提出的基于路径和基于段的变异感知全局布局方法。这四种方法均使用Matlab 2014a实现。
对于每次实验,用Verilog编写的基准电路首先通过新思科技Design Compiler进行综合以获得输入电路网表。然后应用相应的全局布局算法。全局布局完成后,采用参考文献[25]中提出的合法化方法将单元对齐到行中,并消除门电路之间的所有重叠。随后进行蒙特卡洛仿真以评估布局结果的时序统计。每次实验均执行2000次蒙特卡洛仿真运行。
在每次蒙特卡洛仿真运行中,电路中每一行的碳纳米管数量均被随机生成。采用第3.1节所述方法表征的每个标准单元的确定性时序参数来获取门延迟。使用半周长线长作为每个互连网络线长的估计值。互连延迟基于埃尔莫尔延迟模型进行评估。对时序图应用一次静态时序分析(STA)以评估电路的延迟。在静态时序分析过程中,每个逻辑门的输入转换速率均设置为相同的标称值;该类似方法也在参考文献[12]中被采用。在所有蒙特卡洛仿真运行完成后,收集所有运行得到的不同电路延迟值,形成一个分布。然后,我们得到了该布局下的均值、标准差、95%时序良率裕量以及99%时序良率裕量。
8.2.2 14nm工艺节点的结果
在本节中,我们展示了14纳米碳纳米管场效应晶体管标准单元库的结果。表4显示了所有基准电路的延迟统计数据。从实验结果可以看出,在电路延迟的均值和标准差方面,我们提出的基于分段的全局布局方法在八个基准测试中的大多数情况下,其值均小于基线方法和路径修复方法。我们提出的基于路径的全局布局也得出相同的结论。
与基线方法相比,我们提出的基于路径的方法平均将95%和99%时序良率裕量分别提高了28.2%和22.6%,而我们提出的基于段的方法则将这两个时序良率裕量分别提高了31.1%和27.8%。这表明我们提出的变异感知全局布局方法在提升CNFET电路的时序良率方面是有效的。根据平均改进百分比,基于段的方法优于基于路径的方法。对于先前的路径修复方法,其相对于基线方法仅平均提升了95%和99%时序良率裕量1.1%和2.1%。因此,我们提出的方法也远优于路径修复方法。原因如下:首先,路径修复方法是在合法化之后作为详细布局方法执行的,因此单元的新位置仅限于某些合法位置。相比之下,我们的方法在全局布局阶段、合法化之前执行,对单元可移动的位置没有限制,因而具有更大的搜索空间。其次,路径修复方法基于一种启发式黄金规则,即将同一条路径上的标准单元重新定位到不同的行上,这种黄金规则仅是一种定性指导原则,不如我们所提出的统计延迟度量这一用于指导优化的定量度量有效。此外,由于依赖黄金规则的本质,路径修复方法只能运行一次迭代,如参考文献[1]所述。相反,借助定量度量,我们的方法可以进行多次迭代优化,持续改善时序良率裕量。
8.2.3 10nm工艺节点的结果及其与14nm工艺节点的比较
在本节中,我们展示了10纳米CNFET标准单元库的结果,并将其与14纳米碳纳米管场效应晶体管标准单元库的结果进行比较。10纳米CNFET标准单元库的延迟统计如表5所示。对于基线方法,10纳米节点下所有基准电路的电路延迟均值和标准差均小于14纳米节点下的对应值。这是因为随着技术节点进步,电路性能得到提升。该结论同样适用于路径修复方法和提出的基于路径的方法。对于提出的基于段的方法,除ckt3外,其余所有基准电路也符合该结论。
10nm和14nm技术节点之间95%和99%时序良率裕量的比较如图9所示。总体而言,对于给定的方法和基准电路,当工艺节点从14nm进步到10nm时,95%和99%时序良率裕量均有所提升。对于路径修复方法,在10nm节点上相对于基线方法在95%和99%时序良率裕量上的平均改进分别为1.6%和2.5%。因此,与14nm技术节点类似,路径修复方法在10nm技术节点上对时序良率裕量的改进也非常有限。对于提出的基于路径的方法,在10nm节点上相对于基线方法在95%和99%时序良率裕量上的平均改进分别为29.2%和22.5%。这些改进值均略高于14nm节点的情况。对于提出的基于段的方法,在10nm节点上相对于基线方法在95%和99%时序良率裕量上的平均改进分别为30.9%和26.6%。这些改进值均略小于14nm节点的情况。总体而言,随着技术从14nm进步到10nm,我们提出的基于路径和基于段的方法均能有效提升CNFET电路相对于基线方法的时序良率。与14nm技术节点相同,对于10nm技术节点,基于段的方法优于基于路径的方法。
9 结论
在本文中,我们提出了两种新的用于CNFET电路的感知变异的全局布局算法,以提高电路时序良率。对于第一种提出的方法,在全局布局过程中,采用基于线段的优化技术来布局一组统计上关键的线段,该方法优化了一个由线段延迟的均值和标准差组成的统计延迟度量。对于第二种提出的方法,则针对一组接近关键的路径优化所提出的统计延迟度量。在优化过程中,两种方法都考虑了碳纳米管场效应晶体管的非对称空间相关性。实验表明,我们提出的全局布局算法在提升CNFET电路的时序良率方面是有效的,其中基于线段的方法略优于基于路径的方法。
2万+

被折叠的 条评论
为什么被折叠?



