掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明涉及计算机技术领域,尤其涉及一种同步器标准单元的ATPG库模型生成系统。

背景技术

自动测试向量生成(Automatic Test Pattern Generation,简称ATPG)是在半导体芯片测试中使用的测试向量由程序自动生成的过程。测试向量按顺序地加载到器件的输入端口上,输出的信号被收集并与预算好的测试向量相比较从而判断测试的结果。ATPG有效性是衡量测试错误覆盖率的重要指标。实现ATPG的基础是构建标准单元对应的ATPG库模型,基于ATPG库模型生成芯片;设计门级网表所对应的ATPG模型,从而通过ATPG工具自动生成测试向量对芯片进行测试。

传统的ATPG库模型是基于标准单元对应的Verilog模型生成的,而标准单元对应的Verilog模型为准确的仿真和验证而开发的,并不适合ATPG目的。例如,为了准确描述模拟行为,IO pad类型的标准单元对应的Verilog模型非常复杂。再如,集成时钟门控(ICG)的标准单元是为时钟门控而设计的,对应的Verilog模型也非常复杂。然而,ATPG只关注数字电路的逻辑行为,基于这些复杂的Verilog模型生成ATPG库模型,使得生成ATPG库模型复杂,进而使得所生成的设计门级网表对应的ATPG模型不够简化,降低了测试效率。

此外,现有技术通常会将设计门级网表通过图形用户界面(Graphical UserInterface,简称GUI)显示,从而对设计门级网表和ATPG过程进行调试。现有技术中通常直接展示设计门级网表中的标准单元、标准单元之间的连接关系以及标准单元基于ATPG模型生成的输入输出值。但是有些标准单元所占面积比较大,且不能直接展示标准单元中的组成细节,可读性差,若需要获取组成细节信息,还需逐个点击对应的标准单元来呈现组成细节,且展开后的标准单元会进一步增加所占面积,从而导致调试效率低,用户体验差。

发明内容

本发明目的在于,提供一种同步器标准单元的ATPG库模型生成系统,简化了同步器标准单元的ATPG库模型的生成过程,提高了同步器标准单元的ATPG库模型的生成效率。

本发明提供了一种同步器标准单元的ATPG库模型生成系统,包括预先构建的ATPG基本单元库{A

步骤E1、获取待处理的同步器标准单元集合{K

步骤E2、从所述第四liberty文件中提取每一K

步骤E3、从K

步骤E4、从{A

步骤E5、设置K

本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明提供的一种同步器标准单元的ATPG库模型生成系统可达到相当的技术进步性及实用性,并具有产业上的广泛利用价值,其至少具有下列优点:

本发明所述系统通过抽取同步器标准单元的状态表中的时序信息、逻辑信息以及寄存器之间的连接关系,基于ATPG基本单元库生成针对逻辑信息的ATPG库模型,再与时钟信息和寄存器之间的连接关系相结合,生成同步器标准单元的ATPG库模型,简化了同步器标准单元的ATPG库模型的生成过程,提高了同步器标准单元的ATPG库模型的生成效率。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。

附图说明

图1为本发明实施例一提供的ATPG库模型生成流程图;

图2为本发明实施例二提供的组合逻辑标准单元的ATPG库模型生成流程图;

图3为本发明实施例三提供的集成时钟门控标准单元的ATPG库模型生成流程示意图;

图4为本发明实施例三提供的集成时钟门控标准单元的状态表示意图;

图5为本发明实施例四提供的同步器标准单元的ATPG库模型生成流程示意图;

图6为本发明实施例四提供的同步器标准单元的状态表示意图;

图7为本发明实施例五提供的目标显示结构生成示意图;

图8为本发明实施例五提供的将待测芯片设计门级网表转换为基于目标显示结构显示的示意图。

具体实施方式

为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种同步器标准单元的ATPG库模型生成系统的具体实施方式及其功效,详细说明如后。

针对传统的ATPG库模型是基于标准单元对应的Verilog模型生成,而ATPG只关注数字电路的逻辑行为,基于这些复杂的Verilog模型生成ATPG库模型,使得生成ATPG库模型的效率低下,ATPG库模型复杂,进而使得所生成的设计门级网表对应的ATPG模型不够简化,降低了测试效率的技术问题,本申请提出了实施例一。

实施例一、

实施例一提供了一种ATPG库模型生成系统,包括预先构建的ATPG基本单元库{A

步骤S1、获取待处理的标准单元库{B

所述步骤S1具体从预设的制程设计信息中获取待处理的标准单元库{B

标准单元库包括版图库、符号库、电路逻辑库等。具体包含了组合逻辑、时序逻辑、功能单元和特殊类型单元,是集成电路芯片后端设计过程中的基础部分。运用预先设计好的优化的库单元进行自动逻辑综合和版图布局布线,可以极大地提高设计效率。通常每个工艺厂商在每个工艺下都会提供相应的标准单元。例如,工艺厂商提供的7nm的标准单元库,10nm的标准单元库等等。每一标准单元库中可能包括成千上万个标准单元,有些标准单元非常复杂,例如一个7nm的标准单元库中可能包括上万个标准单元,待测芯片设计的门级网表是基于标准单元库生成的,由于ATPG不能直接有效处理待测芯片设计最终的门级网表,因此需要抽象出每一标准单元的ATPG库模型,来生成待测芯片设计对应的ATPG模型。每一ATPG库模型均基于ATPG基本单元库{A

第一liberty文件为包括标准单元时序信息和逻辑信息的文件,第一liberty文件和标准单元库均可直接从预设的制程设计信息(Process Design Kit,简称PDK)中获取,在此不再赘述。

步骤S2、从所述第一liberty文件中提取B

其中,第一liberty文件存储有B

步骤S3、基于至少一个A

步骤S4、基于每一候选ATPG库模型对应的A

需要说明的是,基于ATPG基本单元库可能生成多个与B

步骤S5、基于B

需要说明的是,标准单元可能为组合逻辑单元,也可能为时序逻辑单元,若B

传统的ATPG库模型生成方法基于标准单元的Verilog生成,如果需要提取测试相关信息,还需到第一liberty文件中提取,并将这些信息注释到ATPG模型中去,是需要两步实现的,而本申请可以仅通过一步,在从第一liberty文件中提取B

作为一种实施例,测试相关信息具体可以扫描链相关信息,具体的,若B

步骤S21、从所述第一liberty文件中提取扫描链接入信息和扫描链控制信息。

所述步骤S5包括:

步骤S51、基于所述扫描链接入信息,将所述B

更为具体地,为了有效的支持测试电路的自动插入和生成,标准单元库的liberty文件中需要提供带扫描功能的寄存器库单元,并且通过test_cell结构来通过相关的信息。以下通过一个具体示例来说明:

上述示例中,寄存器库单元明确定义了如何把这个库单元接入扫描链,具体以pin‘SI’作为数据端接入扫描链,以pin‘SE’用来控制扫描链的数据输入。这些信息需要被从第一liberty文件中提取出来,然后插入到ATPG库模型中,从而保证后端的进行扫描链的工具能够正确识别和利用这些寄存器库单元,从而正确的在电路中插入测试所需的扫描链。

作为一种实施例,所述ATPG基本单元库包括基本逻辑ATPG基本单元、组合逻辑ATPG基本单元、基本时序逻辑ATPG基本单元和用于处理三态逻辑、上拉电阻和下拉电阻的ATPG基本单元;其中,所述基本逻辑ATPG基本单元包括缓冲器(Buffer)、反相器(Inverter)、与门(AND)、或门(OR)、与非门(NAND)、或非门(NOR);所述组合逻辑ATPG基本单元包括多输入的与或非门(AOI),异或门(XOR),同或门(XNOR)和选择器(MUX)等;所述基本时序逻辑ATPG基本单元包括锁存器(Latch)和寄存器(Flip-flop)。基于ATPG基本单元库,对于一个给定的标准单元,均能尽可能的简化其ATPG库模型。也即用尽可能少的ATPG基本单元来构建ATPG库模型,从而保证ATPG的结果的正确性和高效性。

作为一种实施例,每一ATPG基本单元均基于Verilog语言描述生成,例如一个4输入的与或非门:

再如两输入的MUX:

可以理解的是,以上仅对部分ATPG基本单元进行列举,不局限此。

ATPG基本单元均基于Verilog语言描述生成使得每一B

步骤S6、将B

需要说明的是,由于目标ATPG库模型为基于Verilog语言的模型,因此可以直接与B

通过步骤S1-步骤S6可以生成待处理的标准单元库中每一标准单元对应的ATPG库模型,在此基础上,既可基于待测芯片设计门级网表生成待测芯片设计的ATPG模型,作为一种实施例,所述步骤S6之后还包括:

步骤S7、获取待测芯片设计门级网表,所述待测设计门级网表基于所述待处理的标准单元库{B

步骤S8、将所述待测芯片设计门级网表中每一标准单元替换为预设的目标ATPG库模型库中对应的目标ATPG库模型,生成待测芯片设计门级网表对应的ATPG模型。

需要说明的是,待测芯片设计门级网表对应的ATPG模型生成后,即可基于该ATPG模型通过ATPG工具生成测试向量,对待测芯片进行测试。

ATPG基本单元库是可以根据具体应用需求灵活配置的,作为一种实施例,当所述处理器执行所述计算机程序时,还实现以下步骤:

步骤S9、更新所述ATPG基本单元库,所述更新包括增加、删除或修改ATPG基本单元。

步骤S10、获取更新的ATPG基本单元相对应的标准单元库重新构建待处理的标准单元库,通过步骤S1-步骤S5重新获取对应的ATPG库模型。

实施例一所述系统能够直接从liberty文件提取标准单元对应的逻辑信息,基于逻辑信息和预设的ATPG基本单元库生成每一标准单元对应的ATPG库模型,无需关注标准单元对应的Verilog模型,简化了ATPG库模型的生成过程,提高了ATPG库模型的生成效率和质量。

实施例二、

实施例二提供了一种组合逻辑标准单元的ATPG库模型生成系统,包括预先构建的ATPG基本单元库{A

步骤C1、获取待处理的组合逻辑标准单元集合{D

步骤C2、将ATPG库模型的总权重值作为逻辑优化目标,基于{A

需要说明的是,也可以将真值表转换为布尔函数后进行逻辑优化。逻辑综合的算法用于寻找最优的ATPG库模型。ATPG算法对于芯片门级网表中的ATPG的基本单元数目敏感,优化的目标通常是寻找具有最少基本库单元的等效ATPG库模型。但可以理解的是,若应用场景中还需要考虑其他因素,也可以将其他因素设置在内,但是基本库单元的数目对应的权重设置最高。

步骤C3、获取每一E

其中,

步骤C4、将{E

需要说明的是,基于ATPG基本单元库可能生成多个与D

作为一种实施例,所述步骤C1包括:

步骤C11、从预设的制程设计信息中获取待处理的标准单元库和第一liberty文件,所述第一liberty文件中存储有所述待处理的标准单元库中每一标准单元对应的逻辑信息和时序信息。

其中,第一liberty文件为包括标准单元时序信息和逻辑信息的文件,第一liberty文件和标准单元库均可直接从预设的制程设计信息(Process Design Kit,简称PDK)中获取,在此不再赘述。

步骤C12、从所述待处理的标准单元库和第一liberty文件中提取仅包括逻辑信息的组合逻辑标准单元集合{D

作为一种实施例,所述ATPG基本单元库包括基本逻辑ATPG基本单元、组合逻辑ATPG基本单元、基本时序逻辑ATPG基本单元和用于处理三态逻辑、上拉电阻和下拉电阻的ATPG基本单元;其中,所述基本逻辑ATPG基本单元包括缓冲器(Buffer)、反相器(Inverter)、与门(AND)、或门(OR)、与非门(NAND)、或非门(NOR);所述组合逻辑ATPG基本单元包括多输入的与或非门、异或门(XOR),同或门(XNOR)和选择器(MUX);所述基本时序逻辑ATPG基本单元包括锁存器(Latch)和寄存器(Flip-flop)。基于ATPG基本单元库,对于一个给定的标准单元,均能尽可能的简化其ATPG库模型。也即用尽可能少的ATPG基本单元来构建ATPG库模型,从而保证ATPG的结果的正确性和高效性。

作为一种实施例,每一ATPG基本单元均基于Verilog语言描述生成,从而使得每一B

步骤C5、将D

需要说明的是,由于目标ATPG库模型为基于Verilog语言的模型,因此可以直接与D

上述过程不仅仅适用于组合逻辑标准单元,也可应用在抽取时序信息后的时序逻辑标准单元的目标ATPG库模型的构建过程。作为一种实施例,当所述处理器执行所述计算机程序时,还实现以下步骤:

步骤C10、获取待处理的时序逻辑标准单元集合和第三liberty文件,从所述第三liberty文件中提取每一时序逻辑标准单元对应的状态表。

步骤C20、从每一待处理的时序逻辑标准单元对应的状态表中获取对应的时序信息和逻辑信息,逻辑信息为真值表或布尔函数。

步骤C30、基于待处理的时序逻辑标准单元对应的逻辑信息通过步骤C2-步骤C4生成逻辑信息对应的目标ATPG库模型。

步骤C40、将逻辑信息对应的目标ATPG库模型和时序信息相结合,生成每一待处理的时序逻辑标准单元对应的目标ATPG库模型。

作为一种实施例,所述待处理的时序逻辑标准单元为集成时钟门控标准单元,具体构建集成时钟门控标准单元对应的目标ATPG库模型的技术细节在实施例三中具体描述,在此不再赘述。

作为一种实施例,所述待处理的时序逻辑标准单元为同步器标准单元,具体构建同步器标准单元对应的目标ATPG库模型的技术细节在实施例四中具体描述,在此不再赘述。

实施例二所述系统通过为每一组合逻辑标准单元进行逻辑优化得到每一组合逻辑标准单元的候选ATPG库模型集合,并基于每一标准单元设置对应的权重值从候选ATPG库模型集合中选择目标ATPG库模型,简化了组合逻辑标准单元的ATPG库模型的生成过程,提高了组合逻辑标准单元ATPG库模型的生成效率。

实施例三、

一种集成时钟门控(integrated clock gating,简称ICG)标准单元的ATPG库模型生成系统,包括预先构建的ATPG基本单元库{A

步骤D1、获取待处理的集成时钟门控标准单元集合{F

步骤D2、从所述第三liberty文件中提取每一F

步骤D3、从F

需要说明的是,第一逻辑信息比第二逻辑信息复杂,仍以图4所示状态表为例,抽取的第一逻辑信息为IQ=(FE|TE),第二逻辑信息通常比较简单,例如具体可以为GCK=IQ*CK、GCK=!IQ+CK或者GCK=IQ|CK,GCK为集成时钟门控标准单元的最终输出。

步骤D4、从{A

步骤D5、设置F

作为一种实施例,所述步骤D3包括:

步骤D31、将F

步骤D32、基于F

其中,具体可以将F

作为一种实施例,A

步骤D41、将ATPG库模型的总权重值作为逻辑优化目标,基于{A

需要说明的是,逻辑综合的算法被用于寻找最优的ATPG库模型。ATPG算法对于芯片门级网表中的ATPG的基本单元数目敏感,优化的目标通常是寻找具有最少基本库单元的等效ATPG库模型。但可以理解的是,若应用场景中还需要考虑其他因素,也可以将其他因素设置在内,但是基本库单元的数目对应的权重设置最高。

步骤D42、获取每一Ey

其中,

步骤D43、将{Ey

需要说明的是,基于ATPG基本单元库可能生成多个与F

作为一种实施例,所述D4包括:

步骤D41’、从{A

需要说明的是,由于F

作为一种实施例,所述步骤D1包括:

步骤D11、从预设的制程设计信息中获取待处理的标准单元库和第一liberty文件,所述第一liberty文件中存储有所述待处理的标准单元库中每一标准单元对应的逻辑信息和时序信息。

其中,第一liberty文件为包括标准单元时序信息和逻辑信息的文件,第一liberty文件和标准单元库均可直接从预设的制程设计信息(Process Design Kit,简称PDK)中获取,在此不再赘述。

步骤D12、遍历待处理的标准单元库中的标准单元,将存在至少任意一个管脚的“clock_gate_clock_pin”项设置为“true”的标准单元确定为待处理的集成时钟门控标准单元,生成所述集成时钟门控标准单元集合{F

需要说明的是,“clock_gate_clock_pin”为管脚的一个属性项,当设置为“true”时,说明对应的标准单元为集成时钟门控标准单元。

作为一种实施例,所述ATPG基本单元库包括基本逻辑ATPG基本单元、组合逻辑ATPG基本单元、基本时序逻辑ATPG基本单元和用于处理三态逻辑、上拉电阻和下拉电阻的ATPG基本单元;其中,所述基本逻辑ATPG基本单元包括缓冲器(Buffer)、反相器(Inverter)、与门(AND)、或门(OR)、与非门(NAND)、或非门(NOR);所述组合逻辑ATPG基本单元包括多输入的与或非门、异或门(XOR),同或门(XNOR)和选择器(MUX);所述基本时序逻辑ATPG基本单元包括锁存器(Latch)和寄存器(Flip-flop)。基于ATPG基本单元库,对于一个给定的标准单元,均能尽可能的简化其ATPG库模型。也即用尽可能少的ATPG基本单元来构建ATPG库模型,从而保证ATPG的结果的正确性和高效性。

作为一种实施例,每一ATPG基本单元均基于Verilog语言描述生成,从而使得每一B

步骤D6、将F

需要说明的是,由于目标ATPG库模型为基于Verilog语言的模型,因此可以直接与F

作为一种实施例,若F

具体的,所述第一电平状态为高电平状态,所述第二电平状态为低电平状态,或者,所述第一电平状态为低电平状态,所述第二电平状态为高电平状态。

作为一种实施例,若所述第二电状态为高电平状态,则在所述步骤D5中还包括:在存储单元的有效信号端口插入反相器。

如图4所示的一个集成时钟门控标准单元的状态表,其中,“CK”为使能输入字段,“FE”为第一数据输入字段,“TE”为第二数据输入字段,“IQ”为输出字段。“L”表示第一状态以及第一电平状态,具体为低电平。H表示第二状态以及第二电平状态,具体为高电平。“N”表示保持不变,“-”表示对应字段忽略,也即是任意状态均不会对结果产生影响。

作为一种实施例,若F

具体的,所述第一沿触发状态为上升沿,所述第二沿触发状态为下降沿,或者,所述第一沿触发状态为下降沿,所述第二沿触发状态为上升沿。

作为一种实施例,若所述第二电状态为上升沿,则在所述步骤D5中还包括:在存储单元的有效信号端口插入反相器。

实施例三所述系统通过抽取集成时钟门控标准单元的状态表中的时序信息和逻辑信息,基于ATPG基本单元库生成针对逻辑信息的ATPG库模型,再与时钟信息相结合生成集成时钟门控标准单元的ATPG库模型,简化了集成时钟门控标准单元的ATPG库模型的生成过程,提高了集成时钟门控标准单元的ATPG库模型的生成效率。

实施例四、

实施例四提供了一种同步器标准单元的ATPG库模型生成系统,包括预先构建的ATPG基本单元库{A

步骤E1、获取待处理的同步器标准单元集合{K

步骤E2、从所述第四liberty文件中提取每一K

如图6所示的一个同步器标准单元的状态表,本示例中,存在两个寄存器,对应的输出字段分别为“IQ1”和“IQ2”;“CLK”表示第二使能输入字段,“se”表示选择信号字段,“d”表示同步器标准单元的第一数据输入字段,“si”表示同步器标准单元的第二数据输入字段。“R”表示第一状态,“~R”表示第二状态,“L”表示第一电平状态,具体为低电平,“H”表示第二电平状态,具体为高电平。“N”表示保持不变,“H/L”表示第一电平状态或第二电平状态,“-”表示对应字段忽略,也即是任意状态均不会对结果产生影响。

步骤E3、从K

仍以图6所示示例,“IQ1”对应的寄存器排在“IQ2”对应的寄存器之前,即“IQ1”对应的寄存器的输出端与“IQ2”对应的寄存器的输入端相连。

步骤E4、从{A

步骤E5、设置K

作为一种实施例,所述步骤E1包括:

步骤E11、从预设的制程设计信息中获取待处理的标准单元库和第一liberty文件,所述第一liberty文件中存储有所述待处理的标准单元库中每一标准单元对应的逻辑信息和时序信息。

其中,第一liberty文件为包括标准单元时序信息和逻辑信息的文件,第一liberty文件和标准单元库均可直接从预设的制程设计信息(Process Design Kit,简称PDK)中获取,在此不再赘述。

步骤E12、遍历待处理的标准单元库中的标准单元,将包括两个以上寄存器的时序标准单元确定为待处理的同步器标准单元,生成所述待处理的同步器标准单元集合{K

作为一种实施例,所述ATPG基本单元库包括基本逻辑ATPG基本单元、组合逻辑ATPG基本单元、基本时序逻辑ATPG基本单元和用于处理三态逻辑、上拉电阻和下拉电阻的ATPG基本单元;其中,所述基本逻辑ATPG基本单元包括缓冲器(Buffer)、反相器(Inverter)、与门(AND)、或门(OR)、与非门(NAND)、或非门(NOR);所述组合逻辑ATPG基本单元包括多输入的与或非门、异或门(XOR),同或门(XNOR)和选择器(MUX);所述基本时序逻辑ATPG基本单元包括锁存器(Latch)和寄存器(Flip-flop)。基于ATPG基本单元库,对于一个给定的标准单元,均能尽可能的简化其ATPG库模型。也即用尽可能少的ATPG基本单元来构建ATPG库模型,从而保证ATPG的结果的正确性和高效性。

作为一种实施例,每一ATPG基本单元均基于Verilog语言描述生成,从而使得每一B

步骤E6、将K

需要说明的是,由于目标ATPG库模型为基于Verilog语言的模型,因此可以直接与K

作为一种实施例,所述步骤E3包括:

步骤E31、将K

步骤E32、基于K

其中,具体可以将K

作为一种实施例,A

步骤E41、将ATPG库模型的总权重值作为逻辑优化目标,基于{A

需要说明的是,逻辑综合的算法被用于寻找最优的ATPG库模型。ATPG算法对于芯片门级网表中的ATPG的基本单元数目敏感,优化的目标通常是寻找具有最少基本库单元的等效ATPG库模型。但可以理解的是,若应用场景中还需要考虑其他因素,也可以将其他因素设置在内,但是基本库单元的数目对应的权重设置最高。

步骤E42、获取每一Ec

其中,

步骤E43、将{Ec

需要说明的是,基于ATPG基本单元库可能生成多个与K

作为一种实施例,所述第一沿触发状态为上升沿,所述第二沿触发状态为下降沿,或者,所述第一沿触发状态为下降沿,所述第二沿触发状态为上升沿。

作为一种实施例,若所述第二电状态为上升沿,则在所述步骤E5中还包括在每一寄存器的有效信号端口插入反相器。

实施例四所述系统通过抽取同步器标准单元的状态表中的时序信息、逻辑信息以及寄存器之间的连接关系,基于ATPG基本单元库生成针对逻辑信息的ATPG库模型,再与时钟信息和寄存器之间的连接关系相结合,生成同步器标准单元的ATPG库模型,简化了同步器标准单元的ATPG库模型的生成过程,提高了同步器标准单元的ATPG库模型的生成效率。

实施例五、

针对现有技术中通常直接展示设计门级网表中的标准单元、标准单元之间的连接关系以及标准单元基于ATPG模型生成的输入输出值。但是有些标准单元所占面积比较大,且不能直接展示标准单元中的组成细节,可读性差,若需要获取组成细节信息,还需逐个点击对应的标准单元来呈现组成细节,且展开后的标准单元会进一步增加所占面积,从而导致调试效率低,用户体验差的技术问题,本发明进一步提出了实施例五。

实施例五提供了一种用于生成标准单元目标显示结构的数据处理系统,包括待处理的标准单元库{B

步骤F1、基于B

步骤F2、将Q(n)取反得到!Q(n)。

步骤F3、分别将Q(n)和!Q(n)进行逻辑优化,生成Q(n)对应的积之和SOP(Sum OfProduct)形式的候选函数Q1(n)、Q(n)对应的和之积POS(Product Of Sum)形式的候选函数Q2(n)、!Q(n)对应的积之和SOP形式的候选函数!Q3(n)、!Q(n)对应的和之积POS形式的候选函数!Q4(n)。

SOP表示积之和,即化成最小项的形式,POS表示和之积,即化成最大项的形式。现有的生成Q(n)和!Q(n)的SOP和POS形式的候选函数的实现方式全部落入本发明保护范围之内。

步骤F4、从Q1(n)、Q2(n)、!Q3(n)和!Q4(n)中选择最简化的候选函数作为Q(n)对应的目标函数;

步骤F5、基于Q(n)对应的目标函数生成Q(n)对应的目标显示结构,所述目标显示结构包括输入端口、输出端口、组成模块和组成模块之间的连接关系。

以下通过两种实施例方式来实现步骤F4:

实施方式一、

所述步骤F4包括:

步骤F41、若Q1(n)、Q2(n)、!Q3(n)和!Q4(n)存在一个变量数最少的候选函数,则将变量数最小的候选函数确定为Q(n)对应的目标函数,其中,WX和!WX视为一个变量,WX表示任何一个变量,若存在多个变量数最少的候选函数,执行步骤F42。

步骤F42、若所述多个变量数最少的候选函数存在一个门数量最少的候选函数,则将门数量最少的候选函数确定为Q(n)对应的目标函数,其中候选函数中每一括号对应一个门,若存在多个门数量最少的候选函数,则执行步骤F43。

步骤F43、将所述多个门数量最少的候选函数中取反数量最少的候选函数确定为Q(n)对应的目标函数。

其中,所述步骤F43包括:

步骤F431、若所述多个门数量最少的候选函数中存在一个取反数量最少的候选函数,则将取反数量最少的候选函数确定为Q(n)对应的目标函数,若存在多个取反数量最少的候选函数,则随机选择一个取反数量最少的候选函数作为Q(n)对应的目标函数。

基于上述约束条件优化得到的Q(n)对应的目标显示结构,能够使得显示的原理图便于理解和分析,增加了用户的可读性,提高调试效率。

实施方式二、

所述步骤F4包括:

步骤F41

步骤F42

步骤F43’、获取SX

SY

步骤F44’、将SY

基于上述约束条件优化得到的Q(n)对应的目标显示结构,能够使得显示的原理图便于理解和分析,增加了用户的可读性,提高调试效率。

作为一种实施例,所述系统还包括显示界面,步骤F5之后还包括:

步骤F6、获取待测芯片设计门级网表,所述待测设计门级网表基于所述待处理的标准单元库{B

步骤F7、基于目标显示结构,将所述待测芯片设计门级网表中每一标准单元替换为对应的目标显示结构,在所述显示界面上进行显示。

可以理解的是,步骤F7所显示的结构直接为标准单元替换为对应的目标显示结构,显示的是逻辑正确且显示最优的结构,可以直观呈现整个待测芯片设计门级网表的具体组成,无需额外点击,便于调试。

作为一种实施例,所述系统还包括预先生成的待测芯片设计门级网表对应的ATPG模型,所述步骤F7还包括:

步骤F71、基于待测芯片设计门级网表对应的ATPG模型生成每一目标显示结构对应的输入参数值和输出参数值,并在所述界面上每一目标显示结构对应的输入端和输出端进行显示。

通过直观显示输出输入参数值和输出参数值,进一步提高了调试效率。

图8示出了显示了原始待测芯片设计门级网表原始显示界面(箭头以上的部分)到基于目标显示结构的显示界面(箭头以下部分),从图中可以看出,基于目标显示结构的显示界面使得相同的单元的尺寸明显减小,且明确示出了每一组成单元的详细组成部分以及连接关系。

需要说明的是,待测芯片设计门级网表对应的ATPG模型的具体生成细节可以采用上述时很实施例一、实施例二、实施例三和实施例四中的任何一个技术细节来实现,在此不再赘述。

可以理解的是,上述实施例中一些技术细节同样适用于另一实施例,不再全部展开描述。

实施例五所述系统能够对每一标准单元进行逻辑优化,生成对应的目标显示结构,从而使得在显示芯片设计门级网表时,直接显示每一标准单元对应的目标显示结构,既能清晰显示门级网表的具体组成结构,可读性高,且能缩小芯片设计门级网表的显示面积,便于用户调试,提高了调试效率。

需要说明的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时处理可以被终止,但是还可以具有未包括在附图中的附加步骤。处理可以对应于方法、函数、规程、子例程、子程序等等。

以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

技术分类

06120115921668