CN116611386A - 将局部穿线电阻变换成全局分布电阻 - Google Patents

将局部穿线电阻变换成全局分布电阻 Download PDF

Info

Publication number
CN116611386A
CN116611386A CN202310119583.9A CN202310119583A CN116611386A CN 116611386 A CN116611386 A CN 116611386A CN 202310119583 A CN202310119583 A CN 202310119583A CN 116611386 A CN116611386 A CN 116611386A
Authority
CN
China
Prior art keywords
leaf
terminals
terminal
leaf cells
voltage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310119583.9A
Other languages
English (en)
Inventor
J·赫伯特
J·E·小巴思
M·C·拉纳汉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Synopsys Inc
Original Assignee
Synopsys Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Synopsys Inc filed Critical Synopsys Inc
Publication of CN116611386A publication Critical patent/CN116611386A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3323Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • G06F30/3953Routing detailed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/54Arrangements for designing test circuits, e.g. design for test [DFT] tools
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/025Geometric lay-out considerations of storage- and peripheral-blocks in a semiconductor storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Architecture (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本公开涉及将局部穿线电阻变换成全局分布电阻。一种用于存储器模块电路瞬态分析的方法,所述方法包含:确定表示所述存储器模块电路的网表的多个叶单元的内部电路的端子之间的端口‑端口电阻;生成与所述叶单元的所述内部电路相对应的多个等效网络,所述等效网络彼此连接;将所述叶单元的所述等效网络提升到高于表示所述存储器模块电路的所述网表中的所述叶单元的分层层级;使所述叶单元中的每一个的一或多个端子短接到所述等效网络中的对应者的中心节点;以及执行表示所述存储器模块电路的所述网表的所述叶单元的所述瞬态分析。

Description

将局部穿线电阻变换成全局分布电阻
相关申请
本申请要求2022年2月15日在美国专利商标局中提交的第63/310,419号美国临时专利申请的优先权和权益,所述申请的全部公开内容以引用的方式并入本文中。
技术领域
本公开涉及集成电路(IC)设计和电子设计自动化(EDA)的领域。更确切地说,本公开涉及用于将局部穿线电阻变换成全局分布电阻的系统和方法。
背景技术
电路模拟是一个过程,在这个过程中,使用各种软件算法来创建和分析电子电路的模型,这些算法可以预测和检验电路的行为和性能。由于电子电路特别是集成电路(IC)的制造成本高昂且耗时,因此在制造前使用电路模拟器检验电路的行为和性能更快速、更具成本效益。
例如,电路设计者依靠模拟其设计来验证电路设计的时序性能。传统的存储器编译器实例瞬态分析在通过模拟进行时序规则表征期间消耗了大量的计算资源。此外,通过电路模拟生成时序规则需要以向量和输出测量语句的形式构建输入刺激,以捕获和检验时序。相比之下,静态时序分析的资源消耗较少,可以更快地向电路设计者提供反馈,但这些静态时序分析结果可能不如模拟结果准确。
在此背景技术部分中公开的上述信息仅用于增强对本发明背景的理解,因此其可能包含不构成现有技术的信息。
发明内容
提供此概述是为了介绍本公开的实施例的一系列特征和概念,这些特征和概念将在下面的详细描述中进一步描述。本概述不旨在识别所要求保护的主题的关键或基本特征,也不旨在用于限制所要求保护的主题的范围。所述特征中的一或多个可以与一或多个其它所述特征组合以提供可工作的装置。
在一或多个实施例中,一种用于存储器模块电路瞬态分析的方法包含:确定表示所述存储器模块电路的网表的多个叶单元的内部电路的端子之间的端口-端口电阻;生成与所述叶单元的所述内部电路相对应的多个等效网络,所述等效网络彼此连接;将所述叶单元的所述等效网络提升到高于表示所述存储器模块电路的所述网表中的所述叶单元的分层层级;使所述叶单元中的每一个的一或多个端子短接到所述等效网络中的对应者的中心节点;以及执行表示所述存储器模块电路的所述网表的所述叶单元的所述瞬态分析。
在一或多个实施例中,所述叶单元的所述内部电路包含所述叶单元的一或多个寄生电阻,并且其中所述等效网络包含与所述叶单元的所述一或多个寄生电阻相对应的一或多个等效电阻。
在一或多个实施例中,提升所述叶单元的所述等效网络包含在所述叶单元的输入处连接在所述叶单元外部与所述叶单元的所述一或多个寄生电阻相对应的所述一或多个等效电阻。
在一或多个实施例中,所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻基于所述叶单元的DC模拟通过以下操作来确定:在所述叶单元的所述内部电路中的每一个的第一端子和第二端子之间施加电压以确定所施加电压,并使所述叶单元的所述内部电路中的每一个的一或多个其它端子浮动;测量所述叶单元的所述内部电路中的每一个的所述第一和第二端子之间的电流以确定所测量电流;测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动端子中的一个处的电压以确定所测量电压;通过将所述所测量电压除以所述所测量电流来确定所述第一和第二端子之间的第一电阻值;以及通过将所述所施加电压除以所述所测量电流并从除法结果减去所述第一电阻值来确定所述第一和第二端子之间的第二电阻值。
在一或多个实施例中,方法进一步包含:在所述叶单元的所述内部电路中的每一个的第三端子和第四端子之间施加电压以确定第二所施加电压,并使所述叶单元的所述内部电路中的每一个的所述第一和第二端子中的一或多个浮动;测量所述叶单元的所述内部电路中的每一个的所述第三和第四端子之间的电流以确定第二所测量电流;测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动第一和第二端子中的一个处的电压以确定第二所测量电压;通过将所述第二所测量电压除以所述第二所测量电流来确定所述第三和第四端子之间的第三电阻值;以及通过将所述第二所施加电压除以所述第二所测量电流并从第二除法结果减去所述第三电阻值来确定所述第三和第四端子之间的第四电阻值。
在一或多个实施例中,所述方法进一步包含:确定所述叶单元的所述内部电路当中的一内部电路缺失第三端子;在所述叶单元的所述内部电路的所述第一端子、所述第二端子和第四端子当中的逆时针端子和所述第一、第二和第三端子当中在所述缺失第三端子对面的端子之间施加电压,所述逆时针端子处于所述缺失第三端子的逆时针位置;测量所述逆时针端子和在所述缺失第三端子对面的所述端子之间的电流;测量所述第一、第二和第四端子当中的顺时针端子处的电压,所述顺时针端子处于所述缺失第三端子的顺时针位置;以及通过将所述顺时针端子处的所述电压除以所述逆时针端子和在所述缺失第三端子对面的所述端子之间的所述电流并从第三除法结果减去所述逆时针端子的电阻来确定在所述缺失第三端子对面的所述端子的电阻。
在一或多个实施例中,一种用于存储器模块电路瞬态分析的系统包含:存储指令的存储器;以及处理器,其与所述存储器耦合且用于执行所述指令,所述指令在执行时使所述处理器:移除表示所述存储器模块电路的网表的多个叶单元中的每一个中的一或多个晶体管和电容器;通过至少移除悬挂电阻器迭代地减少所述叶单元中的每一个中的电阻器数目;生成与所述叶单元的内部电路相对应的等效网络;将所述叶单元的所述等效网络提升到高于所述存储器模块电路中的所述叶单元的分层层级;以及执行表示所述存储器模块电路的所述网表的所述叶单元的所述瞬态分析。
在一或多个实施例中,所述处理器进一步配置成:确定所述叶单元的所述内部电路,所述内部电路中的每一个包含在迭代地减少所述叶单元中的每一个中的所述电阻器之后剩余的一或多个电阻器。
在一或多个实施例中,所述叶单元中的每一个中的电阻器总数目进一步通过组合所述叶单元中的每一个的所述内部电路中的串行、并行和三极管电阻器配置迭代地减少。
在一或多个实施例中,处理器进一步配置成:确定所述叶单元的所述内部电路的端子之间的端口-端口电阻;以及使所述叶单元中的每一个的一或多个端子短接到所述等效网络中的对应者的中心节点。
在一或多个实施例中,与所述叶单元的所述内部电路相对应的所述等效网络基于所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻而生成。
在一或多个实施例中,所述叶单元的所述内部电路包含所述叶单元的一或多个寄生电阻,并且其中所述等效网络包含与所述叶单元的所述一或多个寄生电阻相对应的一或多个等效电阻。
在一或多个实施例中,提升所述叶单元的所述等效网络包含在所述叶单元中的每一个的输入处连接在所述叶单元外部与所述叶单元的所述一或多个寄生电阻相对应的所述一或多个等效电阻。
在一或多个实施例中,为了基于所述叶单元的DC模拟确定所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻,所述处理器配置成:在所述叶单元的所述内部电路中的每一个的第一端子和第二端子之间施加电压以确定所施加电压;使所述叶单元的所述内部电路中的每一个的一或多个其它端子浮动;测量所述叶单元的所述内部电路中的每一个的所述第一和第二端子之间的电流以确定所测量电流;以及测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动端子中的一个处的电压以确定所测量电压。
在一或多个实施例中,所述处理器进一步配置成:通过将所述所测量电压除以所述所测量电流来确定所述第一和第二端子之间的第一电阻值;以及将所述所施加电压除以所述所测量电流并从除法结果减去所述第一电阻值来确定所述第一和第二端子之间的第二电阻值。
在一或多个实施例中,所述处理器进一步配置成:在所述叶单元的所述内部电路中的每一个的第三端子和第四端子之间施加电压以确定第二所施加电压;使所述叶单元的所述内部电路中的每一个的所述第一端子和所述第二端子中的一或多个浮动;测量所述叶单元的所述内部电路中的每一个的所述第三和第四端子之间的电流以确定第二所测量电流;测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动第一和第二端子中的一个处的电压以确定第二所测量电压;通过将所述第二所测量电压除以所述第二所测量电流来确定所述第三和第四端子之间的第三电阻值;以及通过将所述第二所施加电压除以所述第二所测量电流并从第二除法结果减去所述第三电阻值来确定所述第三和第四端子之间的第四电阻值。
在一或多个实施例中,所述处理器进一步配置成:确定所述叶单元的所述内部电路当中的一内部电路缺失第三端子;在所述叶单元的所述内部电路的所述第一端子、所述第二端子和第四端子当中的逆时针端子和所述第一、第二和第三端子当中在所述缺失第三端子对面的端子之间施加电压,所述逆时针端子处于所述缺失第三端子的逆时针位置;测量所述逆时针端子和在所述缺失第三端子对面的所述端子之间的电流;测量所述第一、第二和第四端子当中的顺时针端子处的电压,所述顺时针端子处于所述缺失第三端子的顺时针位置;以及通过将所述顺时针端子处的所述电压除以所述逆时针端子和在所述缺失第三端子对面的所述端子之间的所述电流并从第三除法结果减去所述逆时针端子的电阻来确定在所述缺失第三端子对面的所述端子的电阻。
在一或多个实施例中,一种非暂时性计算机可读介质包含所存储指令,所述指令在由处理器执行时使所述处理器:生成与表示存储器模块电路的网表的多个叶单元的内部电路相对应的等效网络;将所述叶单元的所述等效网络提升到高于所述存储器模块电路中的所述叶单元的分层层级;以及执行表示所述存储器模块电路的所述网表的所述叶单元的瞬态分析。
在一或多个实施例中,所述处理器进一步配置成:确定所述叶单元的所述内部电路的端子之间的端口-端口电阻;以及使所述叶单元中的每一个的一或多个端子短接到所述等效网络中的对应者的中心节点,其中所述叶单元的所述内部电路包含所述叶单元的一或多个寄生电阻,其中所述等效网络包含与所述叶单元的所述一或多个寄生电阻相对应的一或多个等效电阻,并且其中提升所述叶单元的所述等效网络包含在所述叶单元的输入处连接在所述叶单元外部与所述叶单元的所述一或多个寄生电阻相对应的所述一或多个等效电阻。
在一或多个实施例中,为了基于所述叶单元的DC模拟确定所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻,所述处理器进一步配置成:在所述叶单元的所述内部电路中的每一个的第一端子和第二端子之间施加电压以确定所施加电压;使所述叶单元的所述内部电路中的每一个的一或多个其它端子浮动;测量所述叶单元的所述内部电路中的每一个的所述第一和第二端子之间的电流以确定所测量电流;测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动端子中的一个处的电压以确定所测量电压;通过将所述所测量电压除以所述所测量电流来确定所述第一和第二端子之间的第一电阻值;以及通过将所述所施加电压除以所述所测量电流并从除法结果减去所述第一电阻值来确定所述第一和第二端子之间的第二电阻值。
附图说明
根据下面给出的详细描述和本公开的实施例的附图将更充分地理解本公开。附图用于提供对本公开实施例的知识和理解,并且不将本公开的范围限制于这些特定实施例。此外,这些附图不一定按比例绘制。
图1A示出由存储器编译器生成的表示存储器模块的实例逻辑网表。
图1B示出具有经提取叶单元的图1A的网表。
图1C示出图1A的网表,其中根据本公开的实施例,叶单元的内部寄生电阻分离成单独电阻。
图2示出根据本公开的一个实施例的用于确定存储器模块的网表的叶单元的等效电阻并将等效电阻提升到高于叶单元的分层层级的方法。
图3示出根据本公开的一个实施例的具有多个经提取叶单元的网表。
图4A示出根据本公开的一个实施例的用于确定叶单元内部的寄生电阻值的方法。
图4B示出根据本公开的一个实施例的确定叶单元中在缺失引脚对面的引脚处的电阻的方法。
根据本公开的一个实施例,图5示出在叶单元的逻辑网表中将局部穿线电阻变换成全局分布电阻的电路,图6示出所述变换方法的流程图。
图7描绘根据本公开的一或多个实施例的在集成电路的设计和制造期间使用的各种过程的流程图。
图8描绘本公开的实施例可在其中操作的实例计算机系统的图。
具体实施方式
本公开的各方面涉及将局部穿线电阻变换成全局分布电阻。
在过去几年中,片上系统(SoC)设计的存储器内容急剧增加。越来越多的硅区域由具有嵌入式SRAM、ROM和多端口寄存器文件等形式的不同功能的存储器组成。SoC中的嵌入式存储器可以提供改进的性能、更低的功耗、具有精细待机模式的按需存储器激活、更紧凑的封装和总体成本降低。另一方面,由于面积和产量优化挑战,嵌入式存储器可能会增加设计复杂性。
嵌入式存储器表征越来越受到SoC设计者的关注。在设计的所有阶段,模型的准确性和效率对于设计具有嵌入式存储器的SoC的成功至关重要。随着特征尺寸在连续过程节点中的缩小,每个芯片的存储器实例数目迅速增加。为了模拟全范围的过程、电压和温度角(PVT)以及过程变化的影响,存储器表征轮次的数目和每一轮次的数据处理时间可能呈指数增长。
创建存储器模型有两种通用方法。第一种方法是基于存储器编译器生成的模型的表征,而第二种方法是基于单个存储器实例的表征。由于终端用户可能需要的可能存储器配置和参数的数目可能会有很大的差异,因此不可能预先构建所有组合。因此,电子设计自动化系统提供了存储器编译器,可以非常快速地自动创建许多不同和独特的存储器。通过将时序数据拟合到多项式方程,并将其系数从小样本存储器实例中导出,来完成表征。这种方法的优点是模型生成速度非常快,但其成本低于最佳准确性。
执行存储器表征的大量工程工作和时间集中在时序分析和模型生成上。时序检验是通过在特定时钟频率下操作来验证设计符合其设计规范而不会因信号到达太快或太晚而导致错误的过程。
晶体管级静态时序分析可能比传统的黑箱方法时序分析更可取。静态时序分析(STA)是一种通过检查所有可能路径的时序违例来验证设计时序性能的方法。STA将设计分解为时序路径,计算沿每个路径的信号传播延迟,并检查设计内部和输入/输出接口处是否违反时序约束。与动态模拟器不同,STA工具不需要在所有可能的场景下模拟整个存储器电路。相反,STA工具使用快速但准确的方法来估计存储器电路内的子电路的延迟,并使用图形分析技术来快速查找存储器电路中最慢和最快的路径(关键路径)。结果是,STA工具通常可以在动态电路模拟器所需时间的一小部分内找到存储器电路中的所有时序违例。
尽管STA工具比模拟快得多,不需要输入向量或测量,但STA工具不识别或考虑叶单元内部的线通电阻,其中输入负载由输出负载调制,因此难以表征叶单元延迟,如下文关于图1A和图1B更详细地描述。叶单元是用于构建存储器实例的原子单元。
本公开的一或多个实施例涉及将局部穿线电阻变换成全局分布电阻。根据一些方面,本公开通过测量端口-端口电阻或移除悬挂电阻并将所述电阻提升到全局网络以启用静态时序表征来提供局部穿线电阻到全局分布电阻的变换。此外,本公开的一或多个实施例可操纵用于模拟大的固有分层设计(例如,存储器宏)的分层寄生网表。
例如,图1A示出由存储器编译器生成的表示存储器模块的实例逻辑网表100。在电子设计中,网表是对电子电路连接性的描述,包含电路中电子组件的列表以及它们连接到的节点的列表。网表可以是含有电子电路设计中所有组件之间的所有连接的机器可读文件。例如,存储器编译器是从叶单元构建不同类型和配置的存储器的软件工具。存储器设计者开发叶单元的方式可以优化重用,并最大限度地增加所提供的编译器配置的数目。编译器将叶单元的特定组合放置在分层配置中,以实现用户的规范。通过简单地邻接单元,在单元的边界处形成连接,从而在叶单元的侧面或边缘的预定布线位置处形成连接。
例如,在图1A中,多个叶单元102、104、106和108的特定组合可以在单元的边界处彼此连接,从而在预定布线位置处形成连接。例如,叶单元102、104、106和108的输入端子可以连接在一起,形成网表100,但是叶单元102、104、106和108的输出端子O[0]、O[1]、O[2]和O[3]未连接。特别地,叶单元的输入示出为位于每个叶单元的左边缘上且连接到来自共享输入线109的对应抽头,所述共享输入线连接到信号W的输入端子101。
为了准确地模拟叶单元102、104、106和108的预先放置的导线的布线电阻,可以在叶单元102、104、106和108上执行提取。例如,图1B示出具有经提取叶单元102、104、106和108的网表100,其具有针对从一个边缘到另一边缘传递到叶单元102、104、106和108的物理布局中的每一信号标注的对应顶部、底部、左侧和右侧标记。换句话说,尽管图1A示出了叶单元的输入连接到来自叶单元外部的共享输入线109的抽头,但共享输入线109实际上是通过叶单元内的直通连接来实施的,其中叶单元的输入连接到其相邻叶单元的输出。此处,按照惯例,后缀:T、:B、:L、:R(下文称为TBLR标记)添加到原始信号名称并放置在对应的边缘(例如,分别为顶部、底部、左侧、右侧边缘)上。例如,叶单元的W:L输入引脚连接到其左侧的叶单元的W:R输出引脚。然后执行提取以捕获叶单元102、104、106和108内部的所有寄生电阻和电容。例如,图1B的叶单元102、104、106和108的寄生电阻分别表示为110、120、130和140,并且寄生电阻110、120、130和140中的每一个的两个端子标记为L(或W:L)和R(或W:R)。然后,将所提取的叶单元102、104、106和108拼接在一起,形成完整实例网表100用于瞬态分析。
STA工具使用快速且基本上准确的方法来估计存储器电路内的子电路的延迟,并使用图形分析技术来快速查找存储器电路中最慢和最快的路径。尽管STA工具比动态电路模拟器快得多,并且不需要向量或测量,但STA工具不识别或考虑叶单元内部的穿线电阻,其中输入负载由输出负载调制,因此难以表征叶单元延迟。
例如,在图1B的经拼接网表100的瞬态分析期间,用于瞬态分析的STA工具可能不识别叶单元102、104、106和108的内部寄生电阻110、120、130和140(例如,将输出引脚上的电容反向通过叶单元传递到叶单元的输入),并且因此可能不准确地确定在网表100的输入端子101处施加的信号基本上瞬时到达端子103(例如,叶单元108的输入端子)。在一些静态时序分析方法中,静态时序分析在到达第一个叶单元102时停止,因为到下一个叶单元104的连接是在网表的分层结构中比被分析并供应到输入端子101的信号W更低的层级上进行的(例如,连接在叶单元内,不在网表分层结构的更高层级处,在输入端子101的层级处)。这可在存储器模块或网表100的时序分析中引入了误差,并且最终导致无法通过在特定时钟频率下操作验证设计(例如,网表100)符合其设计规范而不会因信号到达太快或太晚而导致错误,例如,因为静态时序分析可能无法生成关于信号到达叶单元104、106和108的时间的信息。
此问题发生在互连件被放置在叶单元(例如,叶单元102、104、106和108)内部并且通过邻接最近的邻居来进行连接的存储器设计中,与其中导线位于叶单元外部(并且因此,静态时序分析过程分析沿着叶单元外部的导线并且在电路设计的分层结构的更高层级处传递的信号的时序)的标准单元放置和布设形成对比。
为了克服STA在执行存储器模块的时序分析中的不足,本公开的一或多个实施例分离局部布线电阻,并将局部布线电阻从叶单元内部提升到高于叶单元的层级,以保持网络的分布式性质。因此,本公开的技术优点包含在存储器电路的瞬态分析期间提高STA结果的准确性,并因此在存储器电路设计过程中能够更早地的检测到对关键时序路径和时序违例,而不会导致高成本和长的模拟周转时间。
例如,根据本公开的一或多个实施例,图1C示出网表100,其中叶单元102、104、106和108的内部寄生电阻110、120、130和140或端口-端口TBLR电阻分离成单独电阻以被提升到高于相应叶单元的层级。在图1C中,叶单元102、104、106和108的寄生电阻110、120、130和140示出为具有两个端子的电阻器电路。但是,在一或多个实施例中,叶单元的寄生电阻可以表示为具有三个端子的电阻器电路、具有四个端子的电阻器电路,或具有N个端子的电阻器电路(其中N是整数)。
例如,在图1C中,叶单元102、104、106和108的内部寄生电阻110、120、130和140或端口-端口TBLR电阻表示为其在相应叶单元外部的相应等效电阻。这使得STA能够通过在经变换或经提升等效电阻上执行时序分析或瞬态分析来识别和考虑叶单元102、104、106和108的内部寄生电阻110、120、130和140。
例如,如果与叶单元102、104、106和108当中的双端口叶单元相对应的引脚-引脚电阻表示为RLR,那么关于对应叶单元的左侧端口的等效电阻(RL)和关于右侧端口的等效电阻(RR)可以表示为:
RL=RR=RLR/2 (1)。
例如,在叶单元102的情况下,具有两个端子的内部寄生电阻110的等效电阻112和114可以通过方程1确定。例如,等效电阻112和114中的每一个的电阻值可以是寄生电阻110的电阻值的一半。一旦确定叶单元102的内部寄生电阻110的等效电阻112和114的值,就将具有等效电阻112和114的双端口等效网络提升到高于叶单元102的分层层级。在这个实例中,叶单元102的左右引脚短接到等效网络的中点W。叶单元102的两个端口(例如,L和R)连接在一起或连接到公共点W,并且等效电阻112和114在叶单元102外部连接到公共点W。
类似地,在叶单元104的情况下,具有两个端子的内部寄生电阻120的等效电阻122和124可以通过方程1确定。例如,等效电阻122和124中的每一个的电阻值可以是寄生电阻120的电阻值的一半。一旦确定叶单元104的内部寄生电阻120的等效电阻122和124的值,就将具有等效电阻122和124的双端口等效网络提升到高于叶单元104的分层层级。在这个实例中,叶单元104的左右引脚短接到等效网络的中点W。叶单元104的两个端口(例如,L和R)连接在一起或连接到公共点W,并且等效电阻122和124在叶单元104外部连接到公共点W。
在叶单元106的情况下,具有两个端子的内部寄生电阻130的等效电阻132和134可以通过方程1确定。例如,等效电阻132和134中的每一个的电阻值可以是寄生电阻130的电阻值的一半。一旦确定叶单元106的内部寄生电阻130的等效电阻132和134的值,就将具有等效电阻132和134的双端口等效网络提升到高于叶单元106的分层层级。在这个实例中,叶单元106的左右引脚短接到等效网络的中点W。叶单元106的两个端口(例如,L和R)连接在一起或连接到公共点W,并且等效电阻132和134在叶单元106外部连接到公共点W。
此外,在叶单元108的情况下,具有两个端子的内部寄生电阻140的等效电阻142和144可以通过方程1确定。例如,等效电阻142和144中的每一个的电阻值可以是寄生电阻140的电阻值的一半。一旦确定叶单元108的内部寄生电阻140的等效电阻142和144的值,就将具有等效电阻142和144的双端口等效网络提升到高于叶单元108的分层层级。在这个实例中,叶单元108的左右引脚短接到等效网络的中点W。叶单元108的两个端口(例如,L和R)连接在一起或连接到公共点W,并且等效电阻142和144在叶单元108外部连接到公共点W。
例如,图1C示出将双端口等效网络提升到高于叶单元的分层层级。等效电阻112、114、122、124、132、134、142和144可以在叶单元的输入处在叶单元102、104、106和108外部与彼此串联连接。此外,端口的所有TBLR引脚短接到示出的等效网络的相应公共节点。例如,叶单元(例如,叶单元102)的所述两个或更多个端口连接在一起或连接到公共点(例如,W),并且等效电阻(例如,112、114)在叶单元(例如,叶单元102)外部连接到公共点(例如,W)。因为在图1C的网表100中,与叶单元102、104、106和108的内部寄生电阻110、120、130和140相对应的等效电阻112、114、122、124、132、134、142和144在叶单元的输入处在叶单元102、104、106和108外部连接,所以在图1C的网表100的瞬态分析期间,STA工具将识别等效电阻112、114、122、124、132、134、142和144并且因此生成准确地考虑通过邻接叶单元而形成的实际导线连接的对应内部电阻的时序分析和瞬态分析结果。
在图1C的实施例中,叶单元的左右引脚短接到等效网络的中点。短接TBLR端口避免布线电阻二次计数。此外,虽然经提升网络不是一个精确的等效电路,但是,它是一个非常好的近似,适用于嵌入式穿线应用,足以检测潜在的时序违例。
因此,在图1C的网表100的时序分析或瞬态分析期间,STA工具可以将网表100分解为时序路径,基本上准确地计算沿每个路径的信号传播延迟,并检查设计内部和输入/输出接口处是否违反时序约束。
图2示出根据本公开的一个实施例的用于确定存储器模块的网表的叶单元的等效电阻并将等效电阻提升到高于叶单元的分层层级以用于网表瞬态分析的方法。
例如,为了分离叶单元的端口-端口电阻,在202处,针对具有TBLR后缀的每个端口,确定每个后缀之间的端口-端口电阻。这将进一步关于图3论述。
图3示出根据本公开的一个实施例的具有多个经提取叶单元的网表300,其具有针对从一个边缘到另一边缘传递到叶单元的物理布局中的每一信号标注的对应顶部、底部、左侧和右侧标记。如关于图1B所论述,按照惯例,后缀:T(顶部)、:B(底部)、:L(左侧)、:R(右侧)(下文称为TBLR标记)添加到原始信号名称并放置在对应的边缘上。然后执行提取以捕获叶单元内部的所有寄生电阻。例如,每个寄生电阻的端子标记为B、R、L或T。例如,为了分离叶单元的端口-端口电阻,在202处,确定叶单元的内部电路的端子之间的端口-端口电阻。例如,确定叶单元302的端子B和R之间的电阻。例如,为了分离叶单元304的端口-端口电阻,在202处,确定端子B和R、B和L及L和R之间的电阻。此外,为了分离叶单元306的端口-端口电阻,在202处,确定端子B和R、B和L、L和R、L和T及T和R之间的电阻。
可以通过在待测量的两个引脚上施加较小电压同时使其它引脚浮动,运行DC模拟并测量电流来确定电阻。电阻R可以使用欧姆定律(例如,V=IR,其中V是电阻的两个端子之间的电压,I是通过电阻器的电流)通过将所施加电压除以所测量电流来计算。这个过程针对每个后缀组合重复,并且针对具有TBLR后缀的每个端口再次重复。
例如,图4A示出根据本公开的一个实施例的用于确定叶单元内部的寄生电阻的值的方法。
例如,为了确定叶单元的寄生电阻L、T、R和B的电阻值,首先在402处,在叶单元的内部电路的第一端子和第二端子之间施加电压,同时使其它一或多个端子浮动。例如,为了确定叶单元306的寄生电阻器L、T、R和B的电阻值,在L引脚和R引脚之间施加电压,同时使T和B引脚浮动。
接下来,在404处,测量第一和第二端子之间的电流。例如,在404处,测量引脚L和R之间的电流。
在406处,测量浮动端子中的一个处的电压。例如,在406处,测量叶单元306的T引脚或B引脚处的电压。
在408处,通过将浮动端子中的一个处的所测量电压(例如,406)除以第一和第二端子之间的所测量电流(例如,404)来确定第一和第二端子之间的第一电阻值。例如,通过将在T引脚或B引脚处测量的电压(例如,406)除以在引脚L和R之间测量的电流(404)来确定叶单元306的R电阻。
在410处,通过将在第一和第二端子之间施加的电压(例如,402)除以第一和第二端子之间的所测量电流(例如,404),然后从结果减去第一电阻值来确定第一和第二端子之间的第二电阻值。例如,通过将在L引脚和R引脚之间施加的电压(例如,402)除以在引脚L和R之间测量的电流(404),然后从结果减去R电阻来测量叶单元306的L电阻。
接下来,在412处,如果确定表示叶单元的内部电路具有三个或更多个端子,那么可以通过针对每对端子重复402到410来确定其它寄生电阻。例如,因为表示叶单元306的寄生电阻的内部电路具有四个端子,所以通过重复402到410来确定寄生电阻器T和B的电阻。
但是,如果在叶单元(例如,叶单元304)的内部寄生电阻器电路中,端子(例如,在L、T、R和B当中)不存在,那么图4B示出了确定在缺失引脚对面的引脚处的电阻的方法。
在图4B的方法中,在414处,在缺失引脚的逆时针引脚和在缺失引脚对面的引脚之间施加电压。例如,在叶单元304的情况下,因为缺失引脚T,在相对于缺失引脚T逆时针的引脚L和在缺失引脚T对面的引脚B之间施加电压。
接下来,在416处,测量缺失引脚的逆时针引脚和缺失引脚对面的引脚之间的电流。例如,测量相对于缺失引脚T逆时针的引脚L和在缺失引脚T对面的引脚B之间的电流。
接下来,在418处,测量缺失引脚的顺时针引脚的电压。例如,在相对于缺失引脚T顺时针的引脚R处测量电压。
在420处,可以通过将缺失引脚的顺时针引脚处的电压除以缺失引脚的逆时针引脚和缺失引脚对面的引脚之间的电流并减去在402到412中计算出的逆时针引脚的电阻来确定缺失引脚对面的引脚的电阻。例如,可以通过将缺失引脚T的顺时针引脚R处的电压除以相对于缺失引脚T逆时针的引脚L和缺失引脚T对面的引脚B之间的电流并减去在402到412中计算出的逆时针引脚L的电阻,来确定缺失引脚T对面的引脚B的电阻。
现在,返回到图2,一旦使用图4A-4B的方法确定叶单元的内部寄生电阻器的电阻,就在204处,使用电阻值生成与每个叶单元相对应的等效网络。
例如,关于图1C论述了确定叶单元的寄生电阻的等效网络,其中寄生电阻表示为具有两个端子的电阻器电路。但是,在叶单元(例如,叶单元304)的寄生电阻表示为具有三个端子的电阻器电路时,给定与三端子叶单元相对应的引脚-引脚电阻RLR、RLT、RTR和RRL,至左侧引脚的等效电阻(RL)、至右侧引脚的等效电阻(RR)和至顶部引脚的等效电阻(RT)可以表示为:
RL=(RLT+RLR-RTR)/2 (2),
RR=(RRT+RLR-RTL)/2 (3),以及
RT=(RTL+RTR-RLR)/2 (4)。
此外,在叶单元(例如,叶单元304)的寄生电阻表示为具有四个端子的电阻器电路时,给定与四端子叶单元相对应的引脚-引脚电阻RLR、RLT、RTR、RRL、RBL和RBR,至左侧、右侧和顶部引脚的等效电阻可以表示为与所述三端子网络相对应的上述表达式(2)、(3)和(4)。至底部引脚的等效电阻(RB)可以表示为:
RB=(RBL+RBR-RLR)/2 (5)。
基于方程(1)到(5)针对每个叶单元创建的等效网络可具有中心节点W(例如,图1C)。
在206处,将等效网络提升到高于叶单元的分层层级。例如,一旦确定叶单元的内部寄生电阻的等效电阻的值,就将具有等效电阻的双端口或更多端口等效网络提升到高于叶单元的分层层级(例如,如关于图1C所论述)。例如,如图1C中所示,等效电阻112、114、122、124、132、134、142和144可以在叶单元的输入处在叶单元外部与彼此串联连接。因为在图1C的网表100中,与叶单元102、104、106和108的内部寄生电阻110、120、130和140相对应的等效电阻112、114、122、124、132、134、142和144在叶单元的输入处在叶单元102、104、106和108外部连接,所以在图1C的网表100的瞬态分析期间,STA工具将识别等效电阻112、114、122、124、132、134、142和144。因此,在图1C的网表100的时序分析或瞬态分析期间,STA工具可将网表100分解为时序路径,基本上准确地计算沿每个路径的信号传播延迟,并检查设计内部和输入/输出接口处是否违反时序约束。
在208处,将叶单元的所有端子短接到等效网络的中心节点。例如,叶单元(例如,叶单元102)的所有引脚(例如,TBLR)短接到等效网络的中点(例如,W)。叶单元(例如,叶单元102)的所述两个或更多个端口连接在一起或连接到公共点(例如,W),并且等效电阻(例如,112、114)在叶单元(例如,叶单元102)外部连接到公共点(例如,W)。短接TBLR端口避免布线电阻二次计数。
图5和6示出根据本公开的一个实施例的在叶单元的逻辑网表中将局部穿线电阻变换成全局分布电阻的电路及变换方法的流程图。根据一或多个实施例,图5-6的方法是电路拓扑简化技术。
图5-6的方法应用到具有经提取叶单元502、504、506和508的网表500。包含图5的510中所示的经提取叶单元的网表可类似于具有图1B的经提取叶单元的网表。
例如,为了在叶单元的逻辑网表中将局部穿线电阻变换成全局分布电阻,在610处,移除网表的叶单元中的所有晶体管和电容器。例如,如520中所示,移除网表的叶单元502、504、506和508中的所有晶体管和电容器。因此,仅剩电阻器留在电路设计的叶单元502、504、506和508中。
在620处,通过组合串行、并行和三极管电阻器配置来迭代地减少叶单元中的电阻器数目。例如,如530中所示,从叶单元502、504、506和508移除悬挂电阻器,直到只有端口-端口电阻器保持去往公共节点为止。在一或多个实施例中,减小电阻器网络可包含将三角形电路变换成Y形电路。例如,给定与三角形电路相对应的电阻Ra、Rb和Rc,等效Y形电路的电阻R1、R2和R3可以表示为:
R1=RbRc/(Ra+Rb+Rc)
R2=RaRc/(Ra+Rb+Rc),以及
R3=RaRb/(Ra+Rb+Rc)。
一旦通过组合串行、并行和三极管配置迭代地减少了叶单元中的电阻器,就在630处,确定叶单元中剩余的内部电阻的等效电阻。内部电路包含在迭代地减少叶单元中的电阻器之后剩余的一或多个电阻器。
例如,叶单元的等效电阻可以基于关于图4A-4B论述的方法而确定。
接下来,在640处,将等效电阻提升到高于叶单元的分层层级。例如,如540中所示,一旦确定叶单元502、504、506和508的内部寄生电阻的等效电阻的值(例如,在630处),将具有等效电阻的双端口或更多端口等效网络提升到高于叶单元502、504、506和508的分层层级。
在650处,将叶单元的所有引脚(例如,TBLR)短接到等效网络的中点。例如,如540中所示,叶单元502、504、506和508的TBLR端口短接到等效网络的公共节点。叶单元的所述两个或更多个端口连接在一起或连接到公共点,并且等效电阻在对应叶单元外部连接到公共点。短接TBLR端口避免布线电阻的二次计数。
例如,一旦确定叶单元的内部寄生电阻的等效电阻的值,具有等效电阻的双端口或更多端口等效网络提升到高于叶单元的分层层级。例如,如图5所示,等效电阻可以在叶单元502、504、506和508的输入处在叶单元502、504、506和508外部与彼此串联连接。因为在图5的网表500中,与叶单元502、504、506和508的内部寄生电阻相对应的等效电阻在叶单元的输入处在叶单元502、504、506和508外部连接,所以在图5的网表500的瞬态分析期间,STA工具将识别等效电阻。因此,在图5的网表500的时序分析或瞬态分析期间,STA工具可将网表500分解为时序路径,基本上准确地计算沿每个路径的信号传播延迟,并检查设计内部和输入/输出接口处是否违反时序约束。
图7示出在例如集成电路的制品的设计、检验和制造期间使用以变换和检验表示集成电路的设计数据和指令的一组实例过程700。这些过程中的每一个都可以作为多个模块或操作进行结构化和启用。术语“EDA”表示术语“电子设计自动化”。这些过程以利用设计者提供的信息创建产品理念710开始,所述信息经变换以创建使用一组EDA过程的制品712。当设计完成时,设计被流片734,这是在集成电路的艺术品(例如,几何图案)被发送到制造设施以制造掩模组时,掩模组然后被用于制造集成电路。在流片之后,制造736半导体裸片,并且执行封装和组装工艺738以生产成品集成电路740。
电路或电子结构的规范范围可以从低级晶体管材料布局到高级描述语言。高级表示可用于使用硬件描述语言(“HDL”)(如VHDL、Verilog、SystemVerilog、System C、MyHDL或OpenVera)设计电路和系统。HDL描述可变换为逻辑级寄存器传输级(‘RTL’)描述、门级描述、布局级描述或掩模级描述。每个较低的表示级(即更详细的描述)将更多有用的细节添加到设计描述中,例如包含描述的模块的更多细节。每个较低的表示级(即更详细的描述)可由计算机生成,从设计库导出,或由另一设计自动化过程创建。用于指定更详细描述的较低级表示语言的规范语言的一个实例是SPICE,它用于对具有许多模拟组件的电路进行详细描述。每一级表示的描述都可以由所述层的对应系统(例如,正式检验系统)使用。设计过程可以使用图7中描绘的顺序。所描述的过程可由EDA产品(或EDA系统)实现。
在系统设计714期间,指定待制造集成电路的功能性。设计可以针对期望特征优化,例如功耗、性能、面积(物理和/或代码行)及成本缩减等等。将设计分割成不同类型的模块或组件可以在这个阶段进行。
在逻辑设计和功能检验716期间,电路中的模块或组件用一或多个描述语言指定,并且针对功能准确性检查规范。例如,可以检验电路的组件以生成匹配所设计电路或系统的规范要求的输出。功能检验可以使用模拟器和其它程序,例如测试台生成器、静态HDL检查器和正式检验器。在一些实施例中,被称为“仿真器”或“原型系统”的组件的特殊系统被用于加速功能检验。
在合成和测试设计718期间,将HDL代码变换为网表。在一些实施例中,网表可以是图结构,其中图结构的边缘表示电路的组件,并且图结构的节点表示组件如何互连。HDL代码和网表两者都是分层的制品,EDA产品可以使用它们来检验集成电路在制造时是否按照指定的设计执行。网表可以针对目标半导体制造技术进行优化。另外,可以测试成品集成电路,以检验集成电路满足规范的要求。
在网表检验720期间,检查网表是否符合时序约束以及是否与HDL代码对应。在设计规划722期间,构建并分析集成电路的总体平面布置图以用于时序和顶层布设。
在布局或物理实施724期间,进行物理放置(例如晶体管或电容器的电路组件的定位)和布设(电路组件通过多个导体的连接),并且可以执行从库中选择单元以启用特定逻辑功能。如本文中所使用,术语“单元”可以指定提供布尔逻辑函数(例如,AND、OR、NOT、XOR)或存储函数(例如触发器或锁存器)的一组晶体管、其它组件和互连件。如本文中所使用,电路“块”可以指两个或更多个单元。单元和电路块都可以被称为模块或组件,并且可以作为物理结构在模拟时实现。为选定单元格指定参数(基于“标准单元”),例如大小,并且可在数据库中供EDA产品使用。
在分析和提取726期间,在布局级检验电路功能,这允许优化布局设计。在物理检验728期间,检查布局设计以确保制造约束是正确的,例如DRC约束、电气约束、光刻约束,并且电路系统功能与HDL设计规范匹配。在分辨率增强730期间,变换布局的几何形状以改进电路设计的制造方式。
在流片期间,创建数据以用于(适当时,在应用光刻增强之后)光刻掩模的生产。在掩模数据准备732期间,“流片”数据用于产生光刻掩模,光刻掩模用于生产成品集成电路。
计算机系统(例如,图8的计算机系统800)的存储子系统可用于存储程序和数据结构,所述程序和数据结构由本文中所描述的EDA产品以及用于开发库和使用库的物理及逻辑设计的单元的产品中的一些或全部使用。
图8示出计算机系统800的实例机器,所述实例机器内可执行用于使机器执行本文中所论述的方法中的任何一或多种的一组指令。在替代实施方案中,机器可连接(例如联网)到LAN、内联网、外联网和/或因特网中的其它机器。机器可作为服务器或客户端机器在客户端-服务器网络环境中操作,作为对等机器在对等(或分布式)网络环境中操作,或作为服务器或客户端机器在云计算基础设施或环境中操作。
所述机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝式电话、网络器具、服务器、网络路由器、交换机或桥接器,或能够执行(循序地或以其它方式)指定将由所述机器采取的动作的一组指令的任何机器。另外,尽管示出单个机器,但还应认为术语“机器”包含单独地或联合地执行一组(或多组)指令以执行本文中所论述的方法中的任何一或多种的机器的任何集合。
实例计算机系统800包含处理装置802、主存储器804(例如,只读存储器(ROM)、快闪存储器、例如同步DRAM(SDRAM)等动态随机存取存储器(DRAM))、静态存储器806(例如,快闪存储器、静态随机存取存储器(SRAM)等),以及数据存储装置818,它们经由总线930彼此通信。
处理装置802表示一或多个处理器,例如微处理器、中央处理单元等。更具体地,处理装置可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器,或实施其它指令集的处理器,或实施指令集的组合的处理器。处理装置802还可以是一或多个专用处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等。处理装置802可配置成执行指令826以用于执行本文中所描述的操作和步骤。
计算机系统800可进一步包含网络接口装置808以在网络820上通信。计算机系统800还可包含视频显示单元810(例如,液晶显示器(LCD)或阴极射线管(CRT))、字母数字输入装置812(例如,键盘)、光标控制装置814(例如,鼠标)、图形处理单元822、信号生成装置816(例如,扬声器)、图形处理单元822、视频处理单元828和音频处理单元832。
数据存储装置818可包含机器可读存储介质824(也称为非暂时性计算机可读介质),其上存储有一或多组指令826或体现本文中所描述的任何一或多种方法或功能的软件。指令826还可在其由计算机系统800执行期间完全或至少部分地驻留在主存储器804内和/或处理装置802内,主存储器804和处理装置802也构成机器可读存储介质。
在一些实施方案中,指令826包含实施对应于本公开的功能性的指令。尽管机器可读存储介质824在实例实施方案中展示为单个介质,但术语“机器可读存储介质”应被认为包含存储所述一或多组指令的单个介质或多个介质(例如,集中化或分布式数据库,和/或相关联的高速缓存及服务器)。术语“机器可读存储介质”还应被认为包含能够存储或编码供机器执行的一组指令且使机器和处理装置802执行本公开的任何一或多种方法的任何介质。术语“机器可读存储介质”应被认为包含但不限于固态存储器、光学介质和磁性介质。
已关于计算机存储器内的数据位的操作的算法和符号表示而呈现先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用来将其工作的主旨最有效地传达给本领域的其他技术人员的方式。算法可以是产生所要结果的操作的序列。操作是要求对物理量进行物理操纵的操作。这些量可采取能够被存储、组合、比较和以其它方式操纵的电信号或磁信号的形式。这些信号可被称为位、值、要素、符号、字符、项、数字等。
然而,应牢记,所有这些和类似术语应与适当物理量相关联,且仅仅是应用于这些量的方便的标签。除非本公开中清楚地陈述为其它情况,否则应了解,在整个描述中,特定术语指代将表示为计算机系统的寄存器和存储器内的物理(电子)量的数据操纵和变换为类似地表示为计算机系统存储器或寄存器或其它此类信息存储装置内的物理量的其它数据的计算机系统或类似的电子计算装置的动作和过程。
本公开还涉及用于执行本文的操作的设备。此设备可以出于既定目的而专门构造,或其可包含由存储在计算机中的计算机程序选择性地激活或重新配置的计算机。此计算机程序可以存储在计算机可读存储介质中,例如但不限于任何类型的盘,包含软盘、光盘、CD-ROM和磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡,或适合于存储电子指令的任何类型的介质,它们各自耦合到计算机系统总线。
本文中呈现的算法和显示并非在本质上与任何特定计算机或其它设备相关。各种其它系统可根据本文中的教示与程序一起使用,或可证明构造更专用的设备来执行所述方法是方便的。此外,并不参考任何特定编程语言来描述本公开。应了解,可使用多种编程语言来实施本文中所描述的本公开的教示。
本公开可提供为计算机程序产品或软件,其可包含在其上存储有指令的机器可读介质,所述指令可用于编程计算机系统(或其它电子装置)以执行根据本公开的过程。机器可读介质包含用于存储呈机器(例如,计算机)可读的形式的信息的任何机构。例如,机器可读(例如,计算机可读)介质包含机器(例如,计算机)可读存储介质,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光学存储介质、快闪存储器装置等。
在以上公开内容中,本公开的实施方案已经参考其特定的实例实施方案进行描述。将显而易见的是,可在不脱离所附权利要求书中阐述的本公开的实施方案的更广精神及范围的情况下对其进行各种修改。在本公开以单数形式提及一些要素的情况下,可在图式中描绘超过一个要素,且类似的要素用类似的标号标记。因此,应在说明性意义而非限制性意义上看待本公开和图式。

Claims (20)

1.一种用于存储器模块电路瞬态分析的方法,所述方法包括:
确定表示所述存储器模块电路的网表的多个叶单元的内部电路的端子之间的端口-端口电阻;
生成与所述叶单元的所述内部电路相对应的多个等效网络,所述等效网络彼此连接;
将所述叶单元的所述等效网络提升到高于表示所述存储器模块电路的所述网表中的所述叶单元的分层层级;
使所述叶单元中的每一个的一或多个端子短接到所述等效网络中的对应者的中心节点;以及
执行表示所述存储器模块电路的所述网表的所述叶单元的所述瞬态分析。
2.根据权利要求1所述的方法,
其中所述叶单元的所述内部电路包括所述叶单元的一或多个寄生电阻,且
其中所述等效网络包括与所述叶单元的所述一或多个寄生电阻相对应的一或多个等效电阻。
3.根据权利要求2所述的方法,其中提升所述叶单元的所述等效网络包括在所述叶单元的输入处连接在所述叶单元外部与所述叶单元的所述一或多个寄生电阻相对应的所述一或多个等效电阻。
4.根据权利要求1所述的方法,其中所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻基于所述叶单元的DC模拟通过以下操作来确定:
在所述叶单元的所述内部电路中的每一个的第一端子和第二端子之间施加电压以确定所施加电压,并使所述叶单元的所述内部电路中的每一个的一或多个其它端子浮动;
测量所述叶单元的所述内部电路中的每一个的所述第一和第二端子之间的电流以确定所测量电流;
测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动端子中的一个处的电压以确定所测量电压;
通过将所述所测量电压除以所述所测量电流来确定所述第一和第二端子之间的第一电阻值;以及
通过将所述所施加电压除以所述所测量电流并从除法结果减去所述第一电阻值来确定所述第一和第二端子之间的第二电阻值。
5.根据权利要求4所述的方法,其进一步包括:
在所述叶单元的所述内部电路中的每一个的第三端子和第四端子之间施加电压以确定第二所施加电压,并使所述叶单元的所述内部电路中的每一个的所述第一和第二端子中的一或多个浮动;
测量所述叶单元的所述内部电路中的每一个的所述第三和第四端子之间的电流以确定第二所测量电流;
测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动第一和第二端子中的一个处的电压以确定第二所测量电压;
通过将所述第二所测量电压除以所述第二所测量电流来确定所述第三和第四端子之间的第三电阻值;以及
通过将所述第二所施加电压除以所述第二所测量电流并从第二除法结果减去所述第三电阻值来确定所述第三和第四端子之间的第四电阻值。
6.根据权利要求4所述的方法,其进一步包括:
确定所述叶单元的所述内部电路当中的一内部电路缺失第三端子;
在所述叶单元的所述内部电路的所述第一端子、所述第二端子和第四端子当中的逆时针端子和所述第一、第二和第三端子当中在所述缺失第三端子对面的端子之间施加电压,所述逆时针端子处于所述缺失第三端子的逆时针位置;
测量所述逆时针端子和在所述缺失第三端子对面的所述端子之间的电流;
测量所述第一、第二和第四端子当中的顺时针端子处的电压,所述顺时针端子处于所述缺失第三端子的顺时针位置;以及
通过将所述顺时针端子处的所述电压除以所述逆时针端子和在所述缺失第三端子对面的所述端子之间的所述电流并从第三除法结果减去所述逆时针端子的电阻来确定在所述缺失第三端子对面的所述端子的电阻。
7.一种用于存储器模块电路瞬态分析的系统,所述系统包括:
存储器,其存储指令;以及
处理器,其与所述存储器耦合且用于执行指令,所述指令在执行时使所述处理器:
移除表示所述存储器模块电路的网表的多个叶单元中的每一个中的一或多个晶体管和电容器;
通过至少移除悬挂电阻器迭代地减少所述叶单元中的每一个中的电阻器数目;
生成与所述叶单元的内部电路相对应的等效网络;
将所述叶单元的所述等效网络提升到高于所述存储器模块电路中的所述叶单元的分层层级;以及
执行表示所述存储器模块电路的所述网表的所述叶单元的所述瞬态分析。
8.根据权利要求7所述的系统,其中所述处理器进一步配置成:
确定所述叶单元的所述内部电路,所述内部电路中的每一个包括在迭代地减少所述叶单元中的每一个中的所述电阻器之后剩余的一或多个电阻器。
9.根据权利要求7所述的系统,其中所述叶单元中的每一个中的电阻器总数目进一步通过组合所述叶单元中的每一个的所述内部电路中的串行、并行和三极管电阻器配置迭代地减少。
10.根据权利要求7所述的系统,其中所述处理器进一步配置成:
确定所述叶单元的所述内部电路的端子之间的端口-端口电阻;以及
使所述叶单元中的每一个的一或多个端子短接到所述等效网络中的对应者的中心节点。
11.根据权利要求10所述的系统,其中与所述叶单元的所述内部电路相对应的所述等效网络基于所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻而生成。
12.根据权利要求10所述的系统,其中所述叶单元的所述内部电路包括所述叶单元的一或多个寄生电阻,且
其中所述等效网络包括与所述叶单元的所述一或多个寄生电阻相对应的一或多个等效电阻。
13.根据权利要求12所述的系统,其中提升所述叶单元的所述等效网络包括在所述叶单元中的每一个的输入处连接在所述叶单元外部与所述叶单元的所述一或多个寄生电阻相对应的所述一或多个等效电阻。
14.根据权利要求10所述的系统,其中为了基于所述叶单元的DC模拟确定所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻,所述处理器配置成:
在所述叶单元的所述内部电路中的每一个的第一端子和第二端子之间施加电压以确定所施加电压;
使所述叶单元的所述内部电路中的每一个的一或多个其它端子浮动;
测量所述叶单元的所述内部电路中的每一个的所述第一和第二端子之间的电流以确定所测量电流;以及
测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动端子中的一个处的电压以确定所测量电压。
15.根据权利要求14所述的系统,其中所述处理器进一步配置成:
通过将所述所测量电压除以所述所测量电流来确定所述第一和第二端子之间的第一电阻值;以及
将所述所施加电压除以所述所测量电流并从除法结果减去所述第一电阻值来确定所述第一和第二端子之间的第二电阻值。
16.根据权利要求15所述的系统,其中所述处理器进一步配置成:
在所述叶单元的所述内部电路中的每一个的第三端子和第四端子之间施加电压以确定第二所施加电压;
使所述叶单元的所述内部电路中的每一个的所述第一端子和所述第二端子中的一或多个浮动;
测量所述叶单元的所述内部电路中的每一个的所述第三和第四端子之间的电流以确定第二所测量电流;
测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动第一和第二端子中的一个处的电压以确定第二所测量电压;
通过将所述第二所测量电压除以所述第二所测量电流来确定所述第三和第四端子之间的第三电阻值;以及
通过将所述第二所施加电压除以所述第二所测量电流并从第二除法结果减去所述第三电阻值来确定所述第三和第四端子之间的第四电阻值。
17.根据权利要求15所述的系统,其中所述处理器进一步配置成:
确定所述叶单元的所述内部电路当中的一内部电路缺失第三端子;
在所述叶单元的所述内部电路的所述第一端子、所述第二端子和第四端子当中的逆时针端子和所述第一、第二和第三端子当中在所述缺失第三端子对面的端子之间施加电压,所述逆时针端子处于所述缺失第三端子的逆时针位置;
测量所述逆时针端子和在所述缺失第三端子对面的所述端子之间的电流;
测量所述第一、第二和第四端子当中的顺时针端子处的电压,所述顺时针端子处于所述缺失第三端子的顺时针位置;以及
通过将所述顺时针端子处的所述电压除以所述逆时针端子和在所述缺失第三端子对面的所述端子之间的所述电流并从第三除法结果减去所述逆时针端子的电阻来确定在所述缺失第三端子对面的所述端子的电阻。
18.一种包括所存储指令的非暂时性计算机可读介质,所述指令在由处理器执行时使所述处理器:
生成与表示存储器模块电路的网表的多个叶单元的内部电路相对应的等效网络;
将所述叶单元的所述等效网络提升到高于所述存储器模块电路中的所述叶单元的分层层级;以及
执行表示所述存储器模块电路的所述网表的所述叶单元的瞬态分析。
19.根据权利要求18所述的非暂时性计算机可读介质,其中所述处理器进一步配置成:
确定所述叶单元的所述内部电路的端子之间的端口-端口电阻;以及
使所述叶单元中的每一个的一或多个端子短接到所述等效网络中的对应者的中心节点,
其中所述叶单元的所述内部电路包括所述叶单元的一或多个寄生电阻,
其中所述等效网络包括与所述叶单元的所述一或多个寄生电阻相对应的一或多个等效电阻,且
其中提升所述叶单元的所述等效网络包括在所述叶单元的输入处连接在所述叶单元外部与所述叶单元的所述一或多个寄生电阻相对应的所述一或多个等效电阻。
20.根据权利要求18所述的非暂时性计算机可读介质,其中为了基于所述叶单元的DC模拟确定所述叶单元的所述内部电路的所述端子之间的所述端口-端口电阻,所述处理器进一步配置成:
在所述叶单元的所述内部电路中的每一个的第一端子和第二端子之间施加电压以确定所施加电压;
使所述叶单元的所述内部电路中的每一个的一或多个其它端子浮动;
测量所述叶单元的所述内部电路中的每一个的所述第一和第二端子之间的电流以确定所测量电流;
测量所述叶单元的所述内部电路中的每一个的所述一或多个浮动端子中的一个处的电压以确定所测量电压;
通过将所述所测量电压除以所述所测量电流来确定所述第一和第二端子之间的第一电阻值;以及
将所述所施加电压除以所述所测量电流并从除法结果减去所述第一电阻值来确定所述第一和第二端子之间的第二电阻值。
CN202310119583.9A 2022-02-15 2023-02-15 将局部穿线电阻变换成全局分布电阻 Pending CN116611386A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202263310419P 2022-02-15 2022-02-15
US63/310,419 2022-02-15
US18/107,452 2023-02-08
US18/107,452 US20230260591A1 (en) 2022-02-15 2023-02-08 Transforming local wire thru resistances into global distributed resistances

Publications (1)

Publication Number Publication Date
CN116611386A true CN116611386A (zh) 2023-08-18

Family

ID=87558972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310119583.9A Pending CN116611386A (zh) 2022-02-15 2023-02-15 将局部穿线电阻变换成全局分布电阻

Country Status (3)

Country Link
US (1) US20230260591A1 (zh)
CN (1) CN116611386A (zh)
TW (1) TW202347160A (zh)

Also Published As

Publication number Publication date
US20230260591A1 (en) 2023-08-17
TW202347160A (zh) 2023-12-01

Similar Documents

Publication Publication Date Title
US11347917B2 (en) Determining and verifying metastability in clock domain crossings
US20210312113A1 (en) Method for finding equivalent classes of hard defects in stacked mosfet arrays
US11694016B2 (en) Fast topology bus router for interconnect planning
US11022634B1 (en) Rail block context generation for block-level rail voltage drop analysis
CN114586036A (zh) 利用寄存器传输级矢量的毛刺功率分析
US11966678B2 (en) Modelling timing behavior using augmented sensitivity data for physical parameters
US20220198120A1 (en) Clock aware simulation vector processor
US11334698B2 (en) Cell-aware defect characterization by considering inter-cell timing
US20210374313A1 (en) Finding equivalent classes of hard defects in stacked mosfet arrays
US11231462B1 (en) Augmenting an integrated circuit (IC) design simulation model to improve performance during verification
CN115510802A (zh) 用于预测详细布线拓扑和轨道使用的机器学习模型
US20230260591A1 (en) Transforming local wire thru resistances into global distributed resistances
CN114520504A (zh) 用于检查牺牲器件上的静电放电效应的自动化方法
CN113536726A (zh) 用于最大瞬时峰值功率的矢量生成
US11087059B2 (en) Clock domain crossing verification of integrated circuit design using parameter inference
US20220335187A1 (en) Multi-cycle test generation and source-based simulation
US12014127B2 (en) Transforming a logical netlist into a hierarchical parasitic netlist
US11416661B2 (en) Automatic derivation of integrated circuit cell mapping rules in an engineering change order flow
Veigas et al. Open source VLSI design automation
US11836433B2 (en) Memory instance reconfiguration using super leaf cells
US20230252208A1 (en) Transforming a logical netlist into a hierarchical parasitic netlist
US11573873B1 (en) Adaptive cell-aware test model for circuit diagnosis
US20230016865A1 (en) Diagnosis of inconsistent constraints in a power intent for an integrated circuit design
US20230177244A1 (en) Creation of reduced formal model for scalable system-on-chip (soc) level connectivity verification
US11972191B2 (en) System and method for providing enhanced net pruning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination