法律状态公告日
法律状态信息
法律状态
2015-02-04
授权
授权
2013-02-06
实质审查的生效 IPC(主分类):G06F17/50 申请日:20120830
实质审查的生效
2012-12-19
公开
公开
技术领域
本申请涉及一种数字集成电路设计方法,
背景技术
图1是一个上升沿D触发器,其输出信号Q只在时钟信号CLK的上升沿跟踪输入信 号D。
图2是一个下降沿D触发器,其只是将上升沿D触发器的时钟输入反相,以使输出 信号Q只在时钟信号CLK的下降沿跟踪输入信号D。
图3是一个双边沿D触发器,包括一个上升沿D触发器10、一个下降沿D触发器 20和一个两路复用器30。在时钟信号CLK的上升沿,两路复用器30将上升沿D触发器 10的输出信号Q1作为双边沿D触发器的输出信号Q3。在时钟信号CLK的下降沿,两路 复用器30将下降沿D触发器20的输出信号Q2作为双边沿D触发器的输出信号Q3。因 此,双边沿D触发器的输出信号Q3既在时钟信号CLK的上升沿、也在时钟信号CLK的 下降沿跟踪输入信号D。
上述以D触发器为例的双边沿触发器打破了一个时钟周期内只能在一个时钟沿进行 数据处理的局限,在一个时钟周期内的上升沿和下降沿均可进行数据处理。采用这种双 边沿触发器后,当输入信号仍维持原来的频率时,时钟信号的频率可减小为原来的一半, 而仍能处理在原时钟信号频率下与单边沿触发器相同的数据量。显然,降低一半时钟频 率可达到显著降低功耗、减小发热的目的。如果仍维持原来的时钟信号频率,则双边沿 触发器在相同时间段内的数据处理量可达原来的两倍,从而显著提升处理速度。
当前,数字集成电路通常采用由顶向下的设计方法。请参阅图4,这是一种典型的 数字集成电路设计方法,包括如下步骤:
第1步、设计输入(design entry),即以文本和/或图形方式描述电路的行为和/ 或结构,形成RTL级的电路描述文件。文本方式例如采用Veri log、VHDL等硬件描述语 言(HDL,hardware description language)。图形方式例如采用原理图、状态图等。 电路行为是指电路的输入与输出之间的关系及其时序关系。电路结构是指电路中的各个 功能块、模块、单元、门及它们之间的连接关系。
第2步、RTL(寄存器传输级,register transfer level)级功能仿真,即对RTL 级电路描述文件进行仿真,测试其功能是否与设计要求一致。RTL级功能仿真又称前仿 真(pre-layout simulation),通常没有时序信息,或简单地定义延迟时间为单位时间, 如1ns。
第3步、逻辑综合(logic synthesis),即将RTL级的电路描述文件转换为由具体 逻辑单元所组成的门级网表(netlist)文件。门级网表文件可以是EDIF文件、VHDL 文件、Verilog文件等。转换过程取决于约束条件和单元库文件。
所述约束条件,包括面积约束、时序约束等。所述时序约束包括要求工作时钟的频 率、占空比、偏移特性、输入信号的输入延时、输出信号的输出延时、各信号的转换时 间等。
所述单元库文件也称工艺库文件,包括各种组合逻辑单元(与非门、多路复用器、 加法器等)和时序逻辑单元(触发器、锁存器等)以及这些单元的一些必要的时序信息 (延时信息、驱动能力等)。
第4步、门级与RTL级形式验证,即根据电路结构静态地判断门级网表文件与RTL 级电路描述文件在功能上是否一致。现有的数字集成电路只采用单边沿触发器,因而这 一步可以省略。
第5步、综合后门级功能仿真,即对逻辑综合后所形成的门级网表文件进行仿真, 测试其功能是否与设计要求一致。此时可选择在门级网表中加入时序信息,以判断其时 序是否与设计要求一致。
第6步、逻辑优化(logic optimization),即根据布尔方程等效原则,将逻辑综 合所生成的门级网表文件中的一些非优化的布尔描述转换为优化的布尔描述,以减小电 路占用的逻辑单元的规模、简化电路结构。逻辑优化后的门级网表文件也要进行功能仿 真。
第7步、优化前后门级形式验证,即根据电路结构静态地判断逻辑优化后的门级网 表文件与逻辑优化前的门级网表文件在功能上是否一致。
第8步、优化后门级功能仿真,即对逻辑优化后所形成的门级网表文件进行仿真, 测试其功能是否与设计要求一致。此时可选择在门级网表中加入时序信息,以判断其时 序是否与设计要求一致。
第9步、布局布线,即根据门级网表文件进行版图设计。该过程通常包括:
(1)预布局(floor planning),即确定芯片的形状、尺寸等。
(2)布局(placement),即在芯片上排列网表的块(blocks),确定块内单元(cells) 的位置。
(3)时钟树综合(clock tree synthesis,CTS),这是根据芯片的物理版图将时 钟信号由时钟源传递至芯片内各个寄存器时钟引脚。时钟树是一种用来分析线延时的树 形结构。例如,将时钟源作为树根,各个同步单元作为树叶,中间的树枝就是实际的连 线。理想情况下,各个同步单元应该同时接收到时钟信号。通过分析时钟树的各条路径 长度即可对接收时钟信号的延时偏差进行优化改进。
(4)布线(routing),即在块和单元内或它们之间确定连线。
第10步、版图级功能仿真,也称后仿真(post-layout simulation),即对布局布 线后的网表文件、或对布局布线后的抽取了RC参数(电阻电容参数)的网表文件进行 仿真,以测试其功能与时序是否与设计要求一致。
第11步、版图验证,包括设计规则检查(DRC)、版图的网表输出(NE)、电学规则 检查(ERC)、寄生参数提取(PE)、电路图版图对照(LVS)等。
第12步、生成版图GDSII数据。
由于EDA(electronic design automation)工具的普及,在上述设计流程的各个 步骤,都有EDA工具帮助实现。在除第1步以外的其余步骤中,基本上是依赖EDA工具 自动实现,如有错误再由人工修改。
现有的数字集成电路设计方法都是基于单边沿触发器的。目前还没有办法进行包含 双边沿触发器的数字集成电路设计,这是由于第3步中的逻辑综合工具等EDA工具都不 支持双边沿触发器,因而无法将RTL级的电路描述文件自动地转换为门级网表文件。这 些工作如全部交由人工处理,则是难以想象的。
发明内容
本申请所要解决的技术问题是使现有的数字集成电路设计方法增加对双边沿触发 器的支持。
为解决上述技术问题,本申请包含双边沿触发器的数字集成电路设计方法包含设计 输入、逻辑综合、门级与RTL级形式验证、逻辑优化、优化前后门级形式验证、布局布 线的步骤;其中:
在设计输入时,RTL级电路描述文件中只采用单边沿触发器;
在逻辑综合后,对生成的综合后第一门级网表文件中的单边沿触发器部分或全部地 改为双边沿触发器,生成综合后第二门级网表文件;同时在门级单元库文件中增加双边 沿触发器的门结构,在门级单元库描述文件中增加双边沿触发器的描述;
在门级与RTL级形式验证时,对综合后第一门级网表文件与RTL级电路描述文件进 行形式验证;
在逻辑优化时,对综合后第二门级网表文件进行逻辑优化;
在优化前后门级形式验证之前,先将门级单元库描述文件中的双边沿触发器的描述 改为与单边沿触发器一致,再对优化后门级网表文件与综合后第二门级网表文件进行形 式验证,再将门级单元库描述文件中的双边沿触发器的描述恢复原样;
在布局布线之前,先在版图级单元库文件中增加双边沿触发器的版图单元结构、和 ROW(排)描述,再进行布局布线;在布局布线时,所生成的时钟树包括了双边沿触发 器的版图单元结构之内的线延迟、和两路复用器的延迟。
本申请所述方法实现了包含双边沿触发器的数字集成电路设计的全流程,使得双边 沿触发器真正融入到数字集成电路的设计之中。这对于提升数字集成电路的处理速度、 或者降低数字集成电路的功耗方面,都具有重大意义。
附图说明
图1是上升沿D触发器的逻辑符号。
图2是下降沿D触发器的逻辑符号。
图3是双边沿D触发器的电路示意图。
图4是现有的数字集成电路设计方法的流程图。
图5是本申请的数字集成电路设计方法的流程图。
图中附图标记说明:
10为上升沿D触发器;20为下降沿D触发器;30为两路复用器。
具体实施方式
本申请包含双边沿触发器的数字集成电路设计方法,也具有如图4所示的设计输入、 RTL级功能仿真、逻辑综合、门级与RTL级形式验证、综合后门级功能仿真、逻辑优化、 优化前后门级形式验证、优化后门级功能仿真、布局布线、版图级功能仿真、版图验证、 生成版图GDSII数据这12个步骤。其中对部分步骤进行了修改,具体修改内容如下:
其一,在第1步设计输入时,RTL级电路描述文件中的所有触发器均采用传统的单 边沿触发器。
其二,在第3步逻辑综合后生成的门级网表文件称为综合后第一门级网表文件,其 中的触发器全部是单边沿触发器。然后将综合后第一门级网表文件中的单边沿触发器根 据设计要求部分或全部地改为双边沿触发器,称为综合后第二门级网表文件。这种改变 可以通过脚本文件来实现。
单边沿触发器的优势是版图面积小,双边沿触发器的优势是在保持与单边沿触发器 一样的时钟频率时处理速度可翻倍、在保持与单边沿触发器一样的处理速度时时钟频率 可减半。因而,通常的设计要求是只在需要高速处理的核心模块中采用双边沿触发器, 在其余模块中仍然采用单边沿触发器;对所有触发器采用一样的时钟频率,以使核心模 块的处理速度翻倍。
在形成综合后第二门级网表文件的同时,在门级单元库文件(.lib文件)中增加双 边沿触发器的门结构;还在门级单元库描述文件(.v或.vhd文件)中增加双边沿触发 器的描述,即双边沿触发器在时钟信号的上升沿和下降沿均工作。门级网表文件与门级 单元库描述文件虽然后缀名相同,但前者用来描述各个逻辑单元(组合逻辑单元、时序 逻辑单元)之间的电路连接关系、输入输出关系、时序关系,后者用来描述每个逻辑单 元对时钟信号的响应处理等。
其三,在第4步门级与RTL级形式验证时,对综合后第一门级网表文件与RTL级电 路描述文件进行形式验证。
其四,在第5步综合后门级功能仿真时,对综合后第一门级网表文件进行功能仿真, 该步骤可以省略。
其五,在第6步逻辑优化时,对综合后第二门级网表文件进行逻辑优化。
其六,在第7步优化前后门级形式验证之前,先将门级单元库描述文件(.v或.vhd 文件)中的双边沿触发器的描述改为与单边沿触发器一致,即双边沿触发器只在时钟信 号的上升沿或下降沿工作。然后对优化后门级网表文件与综合后第二门级网表文件进行 形式验证。最后再将门级单元库描述文件中的双边沿触发器的描述恢复原样,即双边沿 触发器在时钟信号的上升沿和下降沿均工作。
其七,在第9步布局布线之前,先在版图级单元库文件(techfile)中增加双边沿 触发器的版图单元结构、和ROW(排)描述,即记录其高度。之后再进行布局布线。在 布局布线时,所生成的时钟树包括了双边沿触发器的版图单元结构之内的线延迟、两路 复用器的延迟信息。
通过对现有的数字集成电路设计方法进行上述改变,使得该方法得以兼容双边沿触 发器。
请参阅图5,这是本申请包含双边沿触发器的数字集成电路设计方法的一个具体实 施例,包括如下步骤:(各步骤中与背景技术中的内容相同的部分不再赘述)
第1步、设计输入以形成RTL级电路描述文件,此时不采用双边沿触发器。遇到需 要使用触发器的情形,全部采用单边沿触发器。常见的设计输入工具软件有Verilog、 VHDL等,它们形成的RTL级电路描述文件的后缀名分别为.v,.vhd。
实际上,Verilog和VDHL这两种硬件描述语言都可以用来描述双边沿触发器,但由 于后续的逻辑综合工具不支持双边沿触发器,因而在设计输入时没有必要采用双边沿触 发器。
第2步、对RTL级电路描述文件进行功能仿真。常见的功能仿真工具有VCS(verilog compiled simulator)、NCVerilog等,它们均支持第2步、第5步、第8步、第10步 的所有功能仿真。
实际上,功能仿真工具是支持双边沿触发器的。但由于之前的RTL级电路描述文件 中不包含双边沿触发器,因而这一步的功能仿真中也没有对双边沿触发器进行功能测 试。
第3步、对RTL级电路描述文件进行逻辑综合,形成门级网表文件。
常见的逻辑综合工具为DC(design compiler),它不支持双边沿触发器。如果RTL 级电路描述文件中包含双边沿触发器,则DC无法将其转换为门级网表文件。因此,本 申请所形成的RTL级电路描述文件中的触发器全部是单边沿触发器,以便于利用DC进 行逻辑综合。综合后所形成的门级网表文件中也没有双边沿触发器,称为综合后第一门 级网表文件。
然后将综合后第一门级网表文件中的单边沿触发器根据设计要求部分或全部地改 为双边沿触发器,称为综合后第二门级网表文件。在形成综合后第二门级网表文件的同 时,在门级单元库文件(.lib文件)中增加双边沿触发器的门结构;还在门级单元库描 述文件(.v或.vhd文件)中增加双边沿触发器的描述。
逻辑综合工具的输入有三类,第一类是RTL级电路描述文件(.v或.vhd文件),第 二类是门级单元库文件(.lib文件),第三类是约束文件(例如时钟约束文件是.sdc文 件);输出的Verilog、VHDL所形成的门级网表文件的后缀名仍分别为.v,.vhd,与RTL 级电路描述文件的后缀名一致。
如果是为了提升双边沿触发器所在模块的处理速度,那么双边沿触发器的时钟频率 将与单边沿触发器保持一致。逻辑综合所用到的时钟约束文件(.sdc文件)中,可以将 双边沿触发器的时钟频率设置为与单边沿触发器一致。
如果是为了降低双边沿触发器所在模块的功耗、散热,而维持与采用单边沿触发器 时一样的处理速度,那么双边沿触发器的时钟频率将变为单边沿触发器的一半。此时可 对时钟约束文件(.sdc文件)进行修改,将双边沿触发器的时钟频率设置为单边沿触发 器的时钟频率的一半。
第4步、对综合后第一门级网表文件与RTL级电路描述文件进行形式验证。常见的 形式验证工具有conformal、formality等,它们均支持第4步、第7步的所有形式验 证。
第5步、对综合后第一门级网表文件进行功能仿真,该步骤可以省略。
第6步、对综合后第二门级网表文件进行逻辑优化,逻辑优化工具就是逻辑综合工 具DC,优化后门级网表文件的后缀名仍为.v或.vhd文件,其中包含双边沿触发器。
DC虽然不支持将包含双边沿触发器的RTL级电路描述文件转换为门级网表文件,但 是支持对包含双边沿触发器的门级网表文件进行逻辑优化。
第7步、先将门级单元库描述文件(.v或.vhd文件)中的双边沿触发器的描述改 为与单边沿触发器一致,即双边沿触发器只在时钟信号的上升沿或下降沿工作。然后对 优化后门级网表文件与综合后第二门级网表文件进行形式验证。最后再将门级单元库描 述文件中的双边沿触发器的描述恢复原样,即双边沿触发器在时钟信号的上升沿和下降 沿均工作。
第8步、对优化后门级网表文件进行功能仿真。
第9步、根据优化后门级网表文件进行布局布线。常见的布局布线工具有SoC Encounter、IC Compiler等。由于现有的版图级单元库文件(techfile)中没有双边沿 触发器的版图单元结构,还需要在其中增加双边沿触发器的版图单元结构之后再进行布 局布线。比较图1~图3可知,双边沿触发器的面积、高度都大致是单边沿触发器的两 倍,因而还需要在版图级单元库文件中增加双边沿触发器的ROW(排)描述,即记录其 高度,之后再进行布局布线。
布局布线过程中会生成时钟树。在只采用单边沿触发器时,时钟树只需要考虑单边 沿触发器的版图单元结构之外的线延迟等延迟信息。在采用了双边沿触发器之后,时钟 树还需要考虑双边沿触发器的版图单元结构之内的线延迟、两路复用器的延迟信息。这 是由于如图3所示,双边沿触发器可视为两个单边沿触发器和一个两路复用器的组合。
布局布线工具读取优化后的门级网表文件(.v或.vhd文件)、门级单元库文件(.lib 文件)、各种约束文件(时钟约束文件.sdc文件、功耗约束文件等)、版图级单元库文件 (.lef),然后进行版图设计。
第10步、根据布局布线后的网表文件、或对布局布线后的抽取了RC参数(电阻电 容参数)的网表文件进行版图级功能仿真。
第11步、对布局布线后的网表文件进行版图验证(物理验证)。版图验证工具可以 采用布局布线工具,也可以采用第三方工具,例如Mentor公司的Calibre系列软件或 者Synopsys公司的Hercules系列软件。
第12步、生成版图GDSII数据,仍采用布局布线工具。
本申请数字集成电路设计方法实现了对双边沿触发器的完全兼容,有利于提升数字 集成电路的处理速度、或者降低数字集成电路的功耗与散热。
以上仅为本申请的优选实施例,并不用于限定本申请。对于本领域的技术人员来说, 本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同 替换、改进等,均应包含在本申请的保护范围之内。
机译: 触发器可预测传感器老化性能中的误差,用于数字集成电路S u00cdncronos
机译: 触发器可预测传感器老化性能中的误差,用于数字集成电路S u00cdncronos
机译: 输出控制扫描触发器,包括该触发器的半导体集成电路以及半导体集成电路的设计方法