CN105447215A - 数字电路设计方法及相关的系统 - Google Patents
数字电路设计方法及相关的系统 Download PDFInfo
- Publication number
- CN105447215A CN105447215A CN201410495863.0A CN201410495863A CN105447215A CN 105447215 A CN105447215 A CN 105447215A CN 201410495863 A CN201410495863 A CN 201410495863A CN 105447215 A CN105447215 A CN 105447215A
- Authority
- CN
- China
- Prior art keywords
- shelves
- standard delay
- delay format
- circuit
- specific node
- 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.)
- Granted
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本公开提供了一种数字电路设计方法及相关的系统。该数字电路设计方法包含有:在进行实体设计之前:根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一标准延迟格式档、以及一第一限制条件档;从该第一限制条件档中提取出电路中至少一特定节点的信息,以产生一第二限制条件档;至少根据该标准延迟格式档以及该第二限制条件档来产生一更新后标准延迟格式档,其中该更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小;以及使用该电路程序档以及该更新后标准延迟格式档来进行一预先电路布局后模拟。
Description
技术领域
本发明涉及电路设计技术领域,特别涉及一种数字电路设计方法及相关的系统。
背景技术
传统的数字电路设计主要分为前段部分与后段部分,其中前段部分主要包含了寄存器传输级(RegisterTransferLevel,RTL)设计与功能模拟(functionalsimulation)、以及逻辑合成(logicsynthesis),而后段部分则包含了实体设计(physicaldesign)、电路自动布局、以及电路布局后模拟(postlayoutsimulation)等等。
一般来说,在逻辑合成之后到实体设计(physicaldesign)完成之前可不需要做具时序延迟信息的功能模拟,且做此类模拟也有其困难,举例来说,在逻辑合成的设定中,电路中具有高负载个数的节点(highfan-outnet),在逻辑合成所产生的时序信息(timinginformation)中会被标示出一个巨大的延迟时间,因此使得逻辑合成所产生的电路程序档(netlist)无法搭配该时序信息来进行模拟。
上述的这些具有高负载个数的节点在后续的实体设计会进行另外的处理而使得其延迟时间不会太长,然而,若是要等到实体设计结束后才进行电路布局后模拟,由于此时间点通常已经接近投片生产(tapeout)的时间,因此,若是在电路布局后模拟才发现问题,往往会对产品的时程表造成影响。
对于数字设计来说,若是在逻辑合成时所设定的限制条件(constraint)正确并且足够,并依此作正确的静态时序分析(statictiminganalysi)而通过验证,一般来说电路布局后模拟并不太会发生错误,然而,有时候由于工程师在输入限制条件时有错误发生,导致了在静态时序分析时没有发现错误,而是在作电路布局后模拟后才发觉,或是某些设计上的错误也可能躲过静态时序分析,而仅能在电路布局后模拟后才发现。然而,如上段所述,若要等到实体设计结束后才能发现这类错误通常显得过晚。
发明内容
因此,本发明的目的之一在于提供一种数字电路设计方法及相关的系统,其可以在进行实体设计之前便可以进行预先电路布局后模拟(pre-post-layoutsimulation),以提前发现电路设计上可能的错误,以解决现有技术中所述的问题。
依据本发明一实施例,一种数字电路设计方法包含有:在进行实体设计之前:根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一标准延迟格式档、以及一第一限制条件档;从该第一限制条件档中提取出电路中至少一特定节点的信息,以产生一第二限制条件档;至少根据该标准延迟格式档以及该第二限制条件档来产生一更新后标准延迟格式档,其中该更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小;以及使用该电路程序档以及该更新后标准延迟格式档来进行一预先电路布局后模拟。
依据本发明另一实施例,公开了一种用来进行数字电路设计的系统,其经由电脑载入该系统以执行;该系统包括第一程序指令模块、第二程序指令模块、第三程序指令模块以及第四程序指令模块;在进行实体设计之前:该第一程序指令模块,根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一标准延迟格式档、以及一第一限制条件档;该第二程序指令模块,从该第一限制条件档中提取出电路中至少一特定节点的信息,以产生一第二限制条件档;该第三程序指令模块,至少根据该标准延迟格式档以及该第二限制条件档来产生一更新后标准延迟格式档,其中该更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小;以及该第四程序指令模块,使用该电路程序档以及该更新后标准延迟格式档来进行一预先电路布局后模拟。
依据本发明另一实施例,一种数字电路设计方法包含有:在进行实体设计之前:根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一标准延迟格式档、以及一更新后标准延迟格式档,其中针对电路中至少一特定节点,该更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小;以及使用该电路程序档以及该更新后标准延迟格式档来进行一预先电路布局后模拟。
依据本发明另一实施例,公开了一种用来进行数字电路设计的系统,其经由电脑载入该系统以执行:在进行实体设计之前:第一程序指令模块,根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一标准延迟格式档、以及一更新后标准延迟格式档,其中针对电路中至少一特定节点,该更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小;以及第二程序指令模块,使用该电路程序档以及该更新后标准延迟格式档来进行一预先电路布局后模拟。
附图说明
图1为依据本发明一实施例的数字电路设计方法的流程图。
图2为依据本发明另一实施例的数字电路设计方法的流程图。
附图标记说明:
102~120、202~216步骤
具体实施方式
请参考图1,图1为依据本发明一实施例的数字电路设计方法的流程图。在本实施例中,数字电路设计方法是由一用来进行数字电路设计的系统被一电脑/处理器载入之后,通过多个程序指令模块所执行,参考图1,数字电路设计方法的流程叙述如下。
首先,在步骤102中,根据一寄存器传输级(RegisterTransferLevel,RTL)设计与多个限制条件(constraint)来进行逻辑合成(logicsynthesis)操作,以在步骤104、106、108中产生一电路程序档(netlist)、一标准延迟格式档(StandardDelayFormat,SDF)、以及一第一限制条件档(constraintfile)。上述的限制条件是由工程师所输入,且主要包含了哪个接脚是时脉输入点,且时脉的频率是多少….等等内容;电路程序档是一种描述电路的文件格式,其在逻辑上会符合寄存器传输级设计,且在时序上会符合工程师所输入的限制条件;标准延迟格式档主要是描述每个电路单元之间的延迟量,以及互联电路之间的延迟量…等等;第一限制条件档主要是描述了上述限制条件的内容,以及有关于电路中具有高负载个数的节点的信息。需注意的是,上述有关于限制条件、标准延迟格式档及第一限制条件档所描述的内容仅涉及本发明公开内容的部分,本领域技术人员应能了解这些文件亦可包含其他必需的信息。
接着,在步骤110中,从第一限制条件档中提取出电路中至少一特定节点的信息,在本实施例中,该特定节点为在逻辑合成中会产生巨大延迟量的点,例如电路中具有高负载个数的节点…等等。接着,在步骤112中,所提取出的特定节点的相关信息被储存为一第二限制条件档。
接着,在步骤114中,根据电路程序档、标准延迟格式档、第一限制条件档、以及第二限制条件档来进行静态时序分析,以分别在步骤116、118中产生静态时序分析报告116以及更新后标准延迟格式档。详细来说,在静态时序分析中,是根据电路程序档、标准延迟格式档(或是更新后标准延迟格式档)以及第一限制条件档来进行静态时序分析,以在步骤116中产生静态时序分析报告;以及至少根据标准延迟格式档以及第二限制条件档以在步骤118中产生更新后标准延迟格式档,其中更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小。此外,在本实施例中,在静态时序分析中,是将该标准延迟格式档中该特定节点的延迟量设为零或是接近实体设计后该特定节点的延迟量,以产生更新后标准延迟格式档,举例来说,假设在步骤106所产生的标准延迟格式档中,针对一具有高负载个数的节点所描述的延迟量是100微秒(micro-second),则在更新后标准延迟格式档中,此具有高负载个数的节点所描述的延迟量是会被修改为0或是接近实体设计后(例如采用时脉树合成(clocktreesynthesis)之后)的延迟量,例如2奈秒(nano-second)。
接着,在步骤120中,使用电路程序档以及更新后标准延迟格式档来进行一预先电路布局后模拟以产生一模拟结果,以供工程师判断在步骤102中所使用的多个限制条件是否有输入错误的情形发生。
需注意的是,上述步骤102~120均是在进行实体设计之前所进行的,因此,可以尽早发现电路设计中是否有潜在问题,尤其是步骤102中所使用的多个限制条件是否有输入错误的情形发生,以避免对产品的时程表造成影响。
此外,在图1所示的步骤102~120完成之后,会再进行实体设计、电路自动布局、以及电路布局后模拟…等后段部分设计。
请参考图2,图2为依据本发明另一实施例的数字电路设计方法的流程图。在本实施例中,数字电路设计方法是由一系统被一电脑/处理器载入之后,通过多个程序指令模块所执行,参考图2,数字电路设计方法的流程叙述如下。
首先,在步骤202中,根据一寄存器传输级设计与多个限制条件来进行逻辑合成操作,以在步骤204、206、208中产生一电路程序档、一第一标准延迟格式档、以及一限制条件档。上述的限制条件是由工程师所输入,且主要包含了哪个接脚是时脉输入点,且时脉的频率是多少….等等内容;电路程序档是一种描述电路的文件格式,其在逻辑上会符合寄存器传输级设计,且在时序上会符合工程师所输入的限制条件;第一标准延迟格式档主要是描述每个电路单元之间的延迟量,以及互联电路之间的延迟量…等等;限制条件档主要是描述了上述限制条件的内容,以及有关于电路中具有高负载个数的节点的信息。需注意的是,上述有关于限制条件、第一标准延迟格式档及限制条件档所描述的内容仅涉及本发明公开内容的部分,本领域技术人员应能了解这些文件亦可包含其他必需的信息。
另外,在步骤202所进行的逻辑合成操作中亦会产生一第二标准延迟格式档(步骤210),其中第二标准延迟格式档的内容类似于图1的实施例中所描述的更新后标准延迟格式档,亦即第二标准延迟格式档中一特定节点(例如,具有高负载个数的节点)的延迟量比第一标准延迟格式档中该特定节点的延迟量小,在本实施例中,是将第一标准延迟格式档中该特定节点的延迟量设为零或是接近实体设计后该特定节点的延迟量,以产生第二标准延迟格式档,举例来说,假设在第一标准延迟格式档中,针对一具有高负载个数的节点所描述的延迟量是100微秒,则在第二标准延迟格式档中,此具有高负载个数的节点所描述的延迟量是会被修改为0或是接近实体设计后(例如采用时脉树合成之后)的延迟量,例如2奈秒。
接着,在步骤212中,根据电路程序档、限制条件档、以及第一或第二标准延迟格式档来进行静态时序分析,以在步骤214中产生静态时序分析报告。
接着,在步骤216中,使用电路程序档以及第二标准延迟格式档来进行一预先电路布局后模拟以产生一模拟结果,以供工程师判断在步骤202中所使用的多个限制条件是否有输入错误的情形发生。
需注意的是,上述步骤202~216均是在进行实体设计之前所进行的,因此,可以尽早发现电路设计中是否有潜在问题,尤其是步骤202中所使用的多个限制条件是否有输入错误的情形发生,以避免对产品的时程表造成影响。
此外,在图2所示的步骤202~216完成之后,会再进行实体设计、电路自动布局、以及电路布局后模拟…等后段部分设计。
简要归纳本发明,在本发明的数字电路设计方法及相关的系统中,是在进行实体设计之前便先进行预先电路布局后模拟,以提前发现电路设计上可能的错误,以避免对产品的时程表造成影响。
以上所述仅为本发明的较佳实施例,凡依本发明权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (14)
1.一种数字电路设计方法,包含有:
在进行实体设计之前:
根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一标准延迟格式档、以及一第一限制条件档;
从该第一限制条件档中提取出电路中至少一特定节点的信息,以产生一第二限制条件档;
至少根据该标准延迟格式档以及该第二限制条件档来产生一更新后标准延迟格式档,其中该更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小;以及
使用该电路程序档以及该更新后标准延迟格式档来进行一预先电路布局后模拟。
2.如权利要求1所述的数字电路设计方法,其中该特定节点为电路中具有高负载个数的节点。
3.如权利要求1所述的数字电路设计方法,其中产生该更新后标准延迟格式档的步骤包含有:
将该标准延迟格式档中该特定节点的延迟量设为零或是接近实体设计后该特定节点的延迟量,以产生该更新后标准延迟格式档。
4.如权利要求1所述的数字电路设计方法,另包含有:
根据该预先电路布局后模拟的模拟结果来判断该多个限制条件是否有错误。
5.一种用来进行数字电路设计的系统,经由电脑载入该系统以执行;该系统包括第一程序指令模块、第二程序指令模块、第三程序指令模块以及第四程序指令模块;
在进行实体设计之前:
该第一程序指令模块,根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一标准延迟格式档、以及一第一限制条件档;
该第二程序指令模块,从该第一限制条件档中提取出电路中至少一特定节点的信息,以产生一第二限制条件档;
该第三程序指令模块,至少根据该标准延迟格式档以及该第二限制条件档来产生一更新后标准延迟格式档,其中该更新后标准延迟格式档中该特定节点的延迟量比该标准延迟格式档中该特定节点的延迟量小;以及
该第四程序指令模块,使用该电路程序档以及该更新后标准延迟格式档来进行一预先电路布局后模拟。
6.如权利要求5所述的系统,其中该特定节点为电路中具有高负载个数的节点。
7.如权利要求5所述的系统,其中第三程序指令模块中产生该更新后标准延迟格式档的步骤包含有:
将该标准延迟格式档中该特定节点的延迟量设为零或是接近实体设计后该特定节点的延迟量,以产生该更新后标准延迟格式档。
8.一种数字电路设计方法,包含有:
在进行实体设计之前:
根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一第一标准延迟格式档、以及一第二标准延迟格式档,其中针对电路中至少一特定节点,该第二标准延迟格式档中该特定节点的延迟量比该第一标准延迟格式档中该特定节点的延迟量小;以及
使用该电路程序档以及该第二标准延迟格式档来进行一预先电路布局后模拟。
9.如权利要求8所述的数字电路设计方法,其中该特定节点为电路中具有高负载个数的节点。
10.如权利要求8所述的数字电路设计方法,其中产生该第二标准延迟格式档的步骤包含有:
将该第一标准延迟格式档中该特定节点的延迟量设为零或是接近实体设计后该特定节点的延迟量,以产生该第二标准延迟格式档。
11.如权利要求8所述的数字电路设计方法,另包含有:
根据该预先电路布局后模拟的模拟结果来判断该多个限制条件是否有错误。
12.一种用来进行数字电路设计的系统,经由电脑载入该系统以执行;该系统包括第一程序指令模块以及第二程序指令模块;
在进行实体设计之前:
该第一程序指令模块,根据一寄存器传输级设计与多个限制条件来进行逻辑合成以至少产生一电路程序档、一第一标准延迟格式档、以及一第二标准延迟格式档,其中针对电路中至少一特定节点,该第二标准延迟格式档中该特定节点的延迟量比该第一标准延迟格式档中该特定节点的延迟量小;以及
该第二程序指令模块,使用该电路程序档以及该第二标准延迟格式档来进行一预先电路布局后模拟。
13.如权利要求12所述的数字电路设计方法,其中该特定节点为电路中具有高负载个数的节点。
14.如权利要求12所述的数字电路设计方法,其中第一程序指令模块中产生该第二标准延迟格式档的步骤包含有:
将该第一标准延迟格式档中该特定节点的延迟量设为零或是接近实体设计后该特定节点的延迟量,以产生该第二标准延迟格式档。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410495863.0A CN105447215B (zh) | 2014-09-24 | 2014-09-24 | 数字电路设计方法及相关的系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410495863.0A CN105447215B (zh) | 2014-09-24 | 2014-09-24 | 数字电路设计方法及相关的系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105447215A true CN105447215A (zh) | 2016-03-30 |
CN105447215B CN105447215B (zh) | 2018-07-27 |
Family
ID=55557388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410495863.0A Active CN105447215B (zh) | 2014-09-24 | 2014-09-24 | 数字电路设计方法及相关的系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105447215B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107368643A (zh) * | 2017-07-13 | 2017-11-21 | 湖南中云飞华信息技术有限公司 | 基于rtl的模块划分方法、装置及终端设备 |
TWI664546B (zh) * | 2018-06-21 | 2019-07-01 | 瑞昱半導體股份有限公司 | 時脈樹合成方法 |
CN112001135A (zh) * | 2019-05-07 | 2020-11-27 | 瑞昱半导体股份有限公司 | 集成电路设计数据库产生方法以及集成电路设计方法 |
CN112632880A (zh) * | 2020-12-28 | 2021-04-09 | 芯华章科技股份有限公司 | 用于逻辑系统设计的编译方法、电子设备及存储介质 |
WO2022227564A1 (zh) * | 2021-04-29 | 2022-11-03 | 上海阵量智能科技有限公司 | 一种电路布图生成方法、装置、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030014720A1 (en) * | 2001-07-12 | 2003-01-16 | Fujitsu Limited | Timing budget designing method |
CN1776698A (zh) * | 2005-11-29 | 2006-05-24 | 知亿科技股份有限公司 | 电路设计辅助方法 |
US20090083684A1 (en) * | 2007-09-24 | 2009-03-26 | International Business Machines Corporation | Method for Violating the Logical Function and Timing Behavior of a Digital Circuit Decision |
CN103177145A (zh) * | 2011-12-20 | 2013-06-26 | 国际商业机器公司 | 一种用于集成电路的多个时序模式合并的方法和系统 |
-
2014
- 2014-09-24 CN CN201410495863.0A patent/CN105447215B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030014720A1 (en) * | 2001-07-12 | 2003-01-16 | Fujitsu Limited | Timing budget designing method |
CN1776698A (zh) * | 2005-11-29 | 2006-05-24 | 知亿科技股份有限公司 | 电路设计辅助方法 |
US20090083684A1 (en) * | 2007-09-24 | 2009-03-26 | International Business Machines Corporation | Method for Violating the Logical Function and Timing Behavior of a Digital Circuit Decision |
CN103177145A (zh) * | 2011-12-20 | 2013-06-26 | 国际商业机器公司 | 一种用于集成电路的多个时序模式合并的方法和系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107368643A (zh) * | 2017-07-13 | 2017-11-21 | 湖南中云飞华信息技术有限公司 | 基于rtl的模块划分方法、装置及终端设备 |
CN107368643B (zh) * | 2017-07-13 | 2020-12-01 | 湖南中易利华信息技术有限公司 | 基于rtl的模块划分方法、装置及终端设备 |
TWI664546B (zh) * | 2018-06-21 | 2019-07-01 | 瑞昱半導體股份有限公司 | 時脈樹合成方法 |
CN112001135A (zh) * | 2019-05-07 | 2020-11-27 | 瑞昱半导体股份有限公司 | 集成电路设计数据库产生方法以及集成电路设计方法 |
CN112632880A (zh) * | 2020-12-28 | 2021-04-09 | 芯华章科技股份有限公司 | 用于逻辑系统设计的编译方法、电子设备及存储介质 |
WO2022227564A1 (zh) * | 2021-04-29 | 2022-11-03 | 上海阵量智能科技有限公司 | 一种电路布图生成方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105447215B (zh) | 2018-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9754059B2 (en) | Graphical design verification environment generator | |
CN109783954B (zh) | 一种ies联合fpga硬件仿真加速系统 | |
CN105447215A (zh) | 数字电路设计方法及相关的系统 | |
US10372841B2 (en) | Self-testing graphical component algorithm specification | |
US7418681B2 (en) | Simulation system, simulation method and simulation program for verifying logic behavior of a semiconductor integrated circuit | |
US6526562B1 (en) | Methods for developing an integrated circuit chip design | |
EP0433066A2 (en) | Common symbol library architecture | |
CN104268310B (zh) | 使用专用图形界面调用uvm验证环境的方法 | |
WO2002001424A2 (en) | System and method relating to verification of integrated circuit design | |
US9569575B2 (en) | Digital circuit design method and associated computer program product | |
CN110716537B (zh) | 一种仿真测试方法和装置 | |
CN110889257B (zh) | Fpga电路验证生成网表的方法及电路逻辑验证平台 | |
Koczor et al. | Verification approach based on emulation technology | |
US6938237B1 (en) | Method, apparatus, and system for hardware design and synthesis | |
CN101303673B (zh) | 接口板、模拟器、同步方法和同步程序 | |
CN101866373B (zh) | 用于电子设计自动化的执行监视器 | |
US7657851B2 (en) | Device, system, and method for correction of integrated circuit design | |
CN102855147A (zh) | 用于局部重配置模拟的方法和系统 | |
JP2009223661A (ja) | 検証支援プログラム、該プログラムを記録した記録媒体、検証支援装置、および検証支援方法 | |
CN109840172A (zh) | 一种基于SoC主控芯片的Nand闪存分析装置及方法 | |
US20140325468A1 (en) | Storage medium, and generation apparatus for generating transactions for performance evaluation | |
CN115935865A (zh) | 一种可重构芯片的验证方法及平台 | |
CN100527138C (zh) | 集成电路元件的模拟实例产生方法与装置 | |
US10936776B1 (en) | Analyzing waveform data generated for simulated circuit design | |
Tam et al. | Fast configuration of PCI express technology through partial reconfiguration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |