CN104951609B - 一种处理门级网表中的同步逻辑结构的方法 - Google Patents

一种处理门级网表中的同步逻辑结构的方法 Download PDF

Info

Publication number
CN104951609B
CN104951609B CN201510346122.0A CN201510346122A CN104951609B CN 104951609 B CN104951609 B CN 104951609B CN 201510346122 A CN201510346122 A CN 201510346122A CN 104951609 B CN104951609 B CN 104951609B
Authority
CN
China
Prior art keywords
script
dff1
register
her0
her1
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.)
Active
Application number
CN201510346122.0A
Other languages
English (en)
Other versions
CN104951609A (zh
Inventor
左丰国
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.)
Xian Unilc Semiconductors Co Ltd
Original Assignee
Xian Unilc Semiconductors Co Ltd
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 Xian Unilc Semiconductors Co Ltd filed Critical Xian Unilc Semiconductors Co Ltd
Priority to CN201510346122.0A priority Critical patent/CN104951609B/zh
Publication of CN104951609A publication Critical patent/CN104951609A/zh
Application granted granted Critical
Publication of CN104951609B publication Critical patent/CN104951609B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明公开一种处理门级网表中的同步逻辑结构的方法,包括:第一步、利用脚本找出待处理门级网表中所有的两个寄存器级联的结构,汇聚成元素表1;第二步、利用脚本,根据时钟树的结构关系,分析元素表1中的各个元素,找出元素表1中两个寄存器属于同一个时钟域的元素,整理形成元素表2;第三步,基于表2中每个元素的寄存器DEF1,利用脚本,找出网表中所有的潜在异步路径PAP;整理形成表3;第四步、利用脚本,根据时钟树的结构关系,分析元素表3中的各个元素,进一步确保PAP的两个寄存器不在同一个时钟域;整理形成表4;第五步、将表4信息提供给仿真工具配合网表进行仿真。本发明处理时间以秒计,省时高效。

Description

一种处理门级网表中的同步逻辑结构的方法
【技术领域】
本发明涉及一种处理门级网表中的同步逻辑结构的方法。
【背景技术】
请参阅图1所示,为同步逻辑结构:寄存器DFF1和寄存器DFF2位于同一个时钟域clk1,两者级联形成一个同步单元,该同步单元用以接受来自另外一个不同时钟域clk0的寄存器DFF0的输出信号或其产生信号。
几个基本概念:
同步逻辑结构:寄存器DFF0,寄存器DFF1和寄存器DFF2共同组成。
同步单元:寄存器DFF1和寄存器DFF2组成。
潜在异步路径PAP(potential asynchronous path):寄存器DFF0和同步单元的寄存器DFF1组成。
归一约束(simple constraint):将所有寄存器归为同步的一个时钟域的约束。
功能约束(constraint):用作电路设计的约束。
现有技术中一般通过多次循环迭代动态仿真并分析仿真结果或报告文件的方式来找到并处理门级网表中的同步逻辑结构,使得网表适合动态仿真。
然,现有技术完成目标所需时间较长,在大规模电路中,往往周期以月计,且需消耗大量的人力资源。
【发明内容】
本发明的目的在于提供一种处理门级网表中的同步逻辑结构的方法,以极大的缩短找寻电路中的同步逻辑的时间周期。
为了实现上述目的,本发明采用如下技术方案:
一种处理门级网表中的同步逻辑结构的方法,包括以下步骤:
第一步、利用脚本找出待处理门级网表中所有的两个寄存器级联的结构,即一个寄存器DFF1的输出端直连另一寄存器DFF2的输入端的结构,汇聚成元素表1,每个级联结构为一个表元素;
第二步、利用脚本,根据时钟树的结构关系,分析元素表1中的各个元素,找出元素表1中两个寄存器属于同一个时钟域的元素,整理找出的元素形成元素表2;
第三步,基于表2中每个元素的寄存器DFF1,利用脚本,找出网表中所有的潜在异步路径PAP;整理所有的潜在异步路径PAP形成表3;
第四步、利用脚本,根据时钟树的结构关系,分析元素表3中的各个元素,进一步确保PAP的两个寄存器不在同一个时钟域;整理形成表4;
第五步、将表4信息提供给仿真工具配合网表进行仿真。
本发明进一步的改进在于:整理形成表4时只保留寄存器DFF1的信息。
本发明进一步的改进在于:找寻潜在异步路径的方法具体包括:
利用脚本,对电路采用归一约束,列出所有终点为寄存器DFF1的时序路径,形成原表;对电路采用功能约束,列出所有终点为寄存器DFF1的时序路径,形成子表;从原表中剔除所有存在于子表中的路径,形成异步路径表;异步路径表中的两个寄存器即构成一个潜在异步路径。
本发明进一步的改进在于:其特征在于,所述脚本为TCL和Perl。
相对于现有技术,本发明具有以下有益效果:本发明提出一种处理门级网表中的同步逻辑结构的方法,采用软件脚本处理分析电路结构的方式,自动找到电路中的同步逻辑结构;该方法能极大的缩短找寻电路中的同步逻辑的时间周期,本发明处理时间以秒计,省时高效(现有技术的方案处理时间往往以月计)。另外,本发明能节省大量人力资源(现有技术的方案需要的大量的人力在本发明处理过程中不再需要)。
【附图说明】
图1为同步逻辑结构的示意图。
【具体实施方式】
本发明一种处理门级网表中的同步逻辑结构的方法,具体包括以下步骤:
第一步、利用TCL和Perl脚本找出待处理门级网表中所有的两个寄存器级联的结构,即一个寄存器DFF1的Q端(输出端)直连另一寄存器DFF2的D端(输入端)的结构,汇聚成元素表1如下,每个级联结构为一个表元素:
表1
[(/her0/her1/her2/…/DFF1_0000),(/her0/her1/her2/…/DFF2_0000)]
[(/her0/her1/her2/…/DFF1_0001),(/her0/her1/her2/…/DFF2_0001)]
[(/her0/her1/her2/…/DFF1_0002),(/her0/her1/her2/…/DFF2_0002)]
[(/her0/her1/her2/…/DFF1_0003),(/her0/her1/her2/…/DFF2_0003)]
[(/her0/her1/her2/…/DFF1_0004),(/her0/her1/her2/…/DFF2_0004)]
[(/her0/her1/her2/…/DFF1_0005),(/her0/her1/her2/…/DFF2_0005)]
第二步、利用TCL和Perl脚本,根据时钟树的结构关系,分析元素表1中的各个元素,找出元素表1中两个寄存器属于同一个时钟域的元素,整理找出的元素形成元素表2:
表2
[(/her0/her1/her2/…/DFF1_0000),(/her0/her1/her2/…/DFF2_0000)]
[(/her0/her1/her2/…/DFF1_0004),(/her0/her1/her2/…/DFF2_0004)]
第三步,基于表2中每个元素的第一个寄存器(寄存器DFF1),利用TCL和Perl脚本,找出网表中所有的潜在异步路径(PAP):
[(/her0/her1/her2/…/DFF1_0000),(/her0/her1/her2/…/DFF2_0000)]
[(/her0/her1/her2/…/DFF0_0000_a),(/her0/her1/her2/…/DFF1_0000),(/her0/her1/her2/…/DFF2_0000)]
[(/her0/her1/her2/…/DFF0_0000_b),(/her0/her1/her2/…/DFF1_0000),(/her0/her1/her2/…/DFF2_0000)]
[(/her0/her1/her2/…/DFF1_0004),(/her0/her1/her2/…/DFF2_0004)]
[(/her0/her1/her2/…/DFF0_0004_a),(/her0/her1/her2/…/DFF1_0004),(/her0/her1/her2/…/DFF2_0004)]
[(/her0/her1/her2/…/DFF0_0004_b),(/her0/her1/her2/…/DFF1_0004),(/her0/her1/her2/…/DFF2_0004)]
整理所有的潜在异步路径PAP形成表3:
表3
[(/her0/her1/her2/…/DFF0_0000_a),(/her0/her1/her2/…/DFF1_0000)]
[(/her0/her1/her2/…/DFF0_0000_b),(/her0/her1/her2/…/DFF1_0000)]
[(/her0/her1/her2/…/DFF0_0004_a),(/her0/her1/her2/…/DFF1_0004)]
[(/her0/her1/her2/…/DFF0_0004_b),(/her0/her1/her2/…/DFF1_0004)]
其中,找寻潜在异步路径PAP的方法具体包括:
利用TCL和Perl脚本,对电路采用归一约束(simple constraint),列出所有终点(endpoint)为寄存器DFF1的时序路径(只针对寄存器到寄存器类),形成原表;对电路采用功能约束(constraint),列出所有终点(endpoint)为寄存器DFF1的时序路径(只针对寄存器到寄存器类),形成子表;从原表中剔除所有存在于子表中的路径,形成异步路径表;异步路径表中的两个寄存器即构成一个PAP。
第四步、利用TCL和Perl脚本,根据时钟树的结构关系,分析元素表3中的各个元素,进一步确保PAP的两个寄存器不在同一个时钟域:
[(/her0/her1/her2/…/DFF0_0000_a),(/her0/her1/her2/…/DFF1_0000)]
[(/her0/her1/her2/…/DFF0_0000_b),(/her0/her1/her2/…/DFF1_0000)]
[(/her0/her1/her2/…/DFF0_0004_a),(/her0/her1/her2/…/DFF1_0004)][(/her0/her1/her2/…/DFF0_0004_b),(/her0/her1/her2/…/DFF1_0004)]…
整理形成表4(只保留寄存器DFF1的信息):
表4
(/her0/her1/her2/…/DFF1_0000)
(/her0/her1/her2/…/DFF1_0004)
第五步、将表4信息提供给仿真工具配合网表进行仿真:(/her0/her1/her2/…/DFF1_0000)
(/her0/her1/her2/…/DFF1_0004)

Claims (2)

1.一种处理门级网表中的同步逻辑结构的方法,其特征在于,包括以下步骤:
第一步、利用脚本找出待处理门级网表中所有的两个寄存器级联的结构,即一个寄存器DFF1的输出端直连另一寄存器DFF2的输入端的结构,汇聚成元素表1,每个级联结构为一个表元素;
第二步、利用脚本,根据时钟树的结构关系,分析元素表1中的各个元素,找出元素表1中两个寄存器属于同一个时钟域的元素,整理找出的元素形成元素表2;
第三步,基于表2中每个元素的寄存器DFF1,利用脚本,找出网表中所有的潜在异步路径PAP,找寻潜在异步路径的方法具体包括:利用脚本,对电路采用归一约束,列出所有终点为寄存器DFF1的时序路径,形成原表;对电路采用功能约束,列出所有终点为寄存器DFF1的时序路径,形成子表;从原表中剔除所有存在于子表中的路径,形成异步路径表;异步路径表中的两个寄存器即构成一个潜在异步路径;整理所有的潜在异步路径PAP形成表3;
第四步、利用脚本,根据时钟树的结构关系,分析元素表3中的各个元素,进一步确保PAP的DFF0和DFF1两个寄存器不在同一个时钟域;整理形成表4;
第五步、将表4信息提供给仿真工具配合网表进行仿真;
其中,所述脚本为TCL和Perl。
2.根据权利要求1所述的一种处理门级网表中的同步逻辑结构的方法,其特征在于,整理形成表4时只保留寄存器DFF1的信息。
CN201510346122.0A 2015-06-19 2015-06-19 一种处理门级网表中的同步逻辑结构的方法 Active CN104951609B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510346122.0A CN104951609B (zh) 2015-06-19 2015-06-19 一种处理门级网表中的同步逻辑结构的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510346122.0A CN104951609B (zh) 2015-06-19 2015-06-19 一种处理门级网表中的同步逻辑结构的方法

Publications (2)

Publication Number Publication Date
CN104951609A CN104951609A (zh) 2015-09-30
CN104951609B true CN104951609B (zh) 2018-05-15

Family

ID=54166266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510346122.0A Active CN104951609B (zh) 2015-06-19 2015-06-19 一种处理门级网表中的同步逻辑结构的方法

Country Status (1)

Country Link
CN (1) CN104951609B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052769A (zh) * 2017-12-28 2018-05-18 天津芯海创科技有限公司 网表仿真验证方法和装置
CN109901049B (zh) * 2019-01-29 2021-05-04 厦门码灵半导体技术有限公司 检测集成电路用时序路径中异步路径的方法、装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1582974A2 (en) * 2004-03-31 2005-10-05 Altera Corporation Apparatus and method for executing instructions of variable length
CN101303710A (zh) * 2008-06-30 2008-11-12 北京中星微电子有限公司 可编程逻辑器件的仿真控制方法及系统
CN101303709A (zh) * 2008-06-30 2008-11-12 北京中星微电子有限公司 可编程逻辑器件的仿真控制方法及系统
CN102656576A (zh) * 2009-12-04 2012-09-05 阿尔特拉公司 防止出现故障时可编程芯片上部件之间的信息泄漏

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1582974A2 (en) * 2004-03-31 2005-10-05 Altera Corporation Apparatus and method for executing instructions of variable length
CN101303710A (zh) * 2008-06-30 2008-11-12 北京中星微电子有限公司 可编程逻辑器件的仿真控制方法及系统
CN101303709A (zh) * 2008-06-30 2008-11-12 北京中星微电子有限公司 可编程逻辑器件的仿真控制方法及系统
CN102656576A (zh) * 2009-12-04 2012-09-05 阿尔特拉公司 防止出现故障时可编程芯片上部件之间的信息泄漏

Also Published As

Publication number Publication date
CN104951609A (zh) 2015-09-30

Similar Documents

Publication Publication Date Title
CN105138774B (zh) 一种基于集成电路层次化设计的时序后仿真方法
CN103268380B (zh) 一种提高布图效率的模拟集成电路版图的设计方法
CN103150440B (zh) 一种模块级电路网表仿真方法
Khan et al. Comparative analysis of network‐on‐chip simulation tools
US8719752B1 (en) Hierarchical crosstalk noise analysis model generation
US9864827B1 (en) System and method for modeling electronic circuit designs
US9449131B2 (en) Extracting system architecture in high level synthesis
CN104346272A (zh) 芯片自动仿真验证系统
CN108073771B (zh) Fpga静态时序分析方法
CN106126854B (zh) 一种软硬件协同仿真交易器和仿真系统
CN113569524A (zh) 芯片设计中基于综合网表提取时钟树的方法及应用
Pang et al. Task mapping and mesh topology exploration for an FPGA-based network on chip
CN104951609B (zh) 一种处理门级网表中的同步逻辑结构的方法
US8640075B2 (en) Early design cycle optimzation
CN104699473A (zh) 时序约束文件的生成方法、装置以及rtl仿真设备
US6687889B1 (en) Method and apparatus for hierarchical clock tree analysis
US9501604B1 (en) Testing critical paths of a circuit design
CN106844900B (zh) 电磁暂态仿真系统的搭设方法
CN106202162B (zh) 一种用于测试推荐房间数据列表的测试系统及方法
Martins et al. A method for NoC-based MPSoC energy consumption estimation
CN102508974B (zh) 基于版图变化改变互连延迟参数的集成电路分析方法
CN103415085A (zh) 一种通用mac协议处理器的自动生成方法
CN202904427U (zh) 多功能模式的时钟树生成电路
Niaki et al. An automated parallel simulation flow for heterogeneous embedded systems
CN105046014A (zh) 一种基于ams的异步时序电路设计方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 710055 Shaanxi City, Xi'an province high tech Road No. 38, innovation center, A, block, floor 4

Applicant after: XI'AN UNIIC SEMICONDUCTORS Co.,Ltd.

Address before: 710075 Shaanxi City, Xi'an province high tech Road No. 38, innovation center, A, block, floor 4

Applicant before: Xi'an Sinochip Semiconductors Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant