数字集成电路仿真方法及仿真器的制造方法

文档序号:9235559阅读:696来源:国知局
数字集成电路仿真方法及仿真器的制造方法
【技术领域】
[0001] 本发明涉及集成电路,更具体地,涉及一种数字集成电路仿真方法及仿真器 (simulator)。
【背景技术】
[0002] 在数字集成电路设计过程中,功能验证通常占据整个设计周期的70%的时间,而 其中95%的功能验证是基于仿真,因此,仿真时间对于W及集成电路芯片的上市时间(time to market,TTM)具有非常大的影响,加速仿真过程对于集成电路芯片设计成功是非常重要 的。
[0003] 目前业界比较常用的仿真工具有Synopsys公司的VCS,Cadence公司的NCSIM 等。集成电路仿真验证的流程为:首先将电路的CTL描述编译成相应的模型,即建模过程, 也就是是将电路的RTL描述转换成某种仿真器可W识别的格式;然后装载模型到仿真器 (simulator)中。此后在输入端口加上激励(testcase),通过仿真器来模拟电路的行为;同 时,使用一个参考模型来监控电路的行为,如果仿真的电路行为和参考模型有任何的不匹 配,那么仿真就会出错。对于测试包中的所有的测试用例,如果测试均正确,则仿真正确,该 个过程可W称之为回归过程(Regression),其占用的仿真时间最长。
[0004] 用于寄存器传输级仿真,n级仿真(RTL simulation, gate-level simulation)的 电路的RTL描述是对于数字电路的不同抽象层次的描述。W-个简单的与口为例子,RTL级 的描述可W是c=A & B,而口级描述就会是一个具体的与n。该些不同抽象层次的描述都可 W认为是电路图的描述。
[0005] 上述CTL仿真、n级仿真包括两值仿真和多值仿真。两值仿真指使用0 / 1两值仿 真一个逻辑位化it);多值仿真是指使用0 / 1 / X等多值仿真一个逻辑位化it)。例如, 上述简单的与口的例子中,两值仿真C=A+B的真值表如表1所示。
[0006] 表 1
[0007]
[0008] 图2示出了简单的与口的两值仿真对应的口级电路模型。
[0009] 而上述简单的与口的例子中,多值仿真的一种实现方式Cx=Ax+Bx真值表如表2所 /J、- 〇
[0010] 表 2
[0011]
[0012] 图3示出了简单的与口在表2实现方式下的多值仿真对应的口级电路模型。
[0013] 与两值仿真相比,多值仿真更能够保证数字集成电路芯片功能的正确性。真实电 路中一个逻辑位确实存在多值的情况,表3给出了两值仿真和多值仿真在一个GPS-8路数 字集成电路设计中建模时间、模型时间和回归时间的对比,其中,GPS-8路数字集成电路设 计只是一个普通复杂度的电路。由表3可见,多值仿真模型复杂,由于模型规模更大,需要 的存储器更多,并且回归的时间更长。
[0014]表 3
[0015]


【发明内容】

[0016] 可见,需要一种在在保证数字集成电路芯片功能的正确性的情况下,能够减少仿 真时间和需要的存储资源的方法和仿真器。
[0017] 根据本发明的一个方面,提供了一种数字集成电路仿真方法,包括:
[0018] 获得所述数字集成电路的电路图及该电路图中的检测节点;
[0019] 根据所述检测节点确定所述电路图中与两值和多值的仿真边界相关的节点W及 该相关节点的状态;
[0020] 根据所述相关节点W及该相关节点的状态,确定所述电路图中两值和多值的仿真 边界的边界位置及该边界位置的边界类型;
[0021] 在所述边界位置根据该边界位置的边界类型插入转换电路;W及
[0022] 对插入转换电路的电路图进行建模及仿真。
[0023] 根据本发明的另一个方面,提供了一种数字集成电路仿真器,包括:
[0024] 获得装置,被配置为获得所述数字集成电路的电路图及该电路图中的检测节点;
[0025] 节点及状态确定装置,被配置为根据所述检测节点确定所述电路图中与两值和多 值的仿真边界相关的节点W及该相关节点的状态;
[0026] 边界及类型确定装置,被配置为根据所述相关节点W及该相关节点的状态,确定 所述电路图中两值和多值的仿真边界的边界位置及该边界位置的边界类型;
[0027] 插入装置,被配置为在所述边界位置根据该边界位置的边界类型插入转换电路; W及
[0028] 建模及仿真装置,被配置为对插入转换电路的电路图进行建模及仿真。
【附图说明】
[0029] 通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述W及其 它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号 通常代表相同部件。
[0030] 图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框 图;
[0031] 图2示出了简单的与口的两值仿真对应的口级电路模型;
[0032] 图3示出了简单的与口在表2实现方式下的多值仿真对应的口级电路模型;
[0033] 图4是示意性示出了根据本发明一种实施方式的一种数字集成电路多值仿真方 法的流程图;
[0034] 图5示出了一个两值到多值边界类型示意电路;
[0035] 图6示出了一个多值到两值的边界类型的示意电路;
[0036] 图7. 1 7]^出了对于图5所7]^的电路插入的对应第一编码方式的第一转换电路图;
[0037] 图7. 2示出了对于图5所示的电路插入的对应第二编码方式的第一转换电路图; [003引图8. 1示出了对于图6所示的电路插入的对应第一编码方式的第二转换电路图;
[0039] 图8. 2示出了对于图6所示的电路插入的对应第一编码方式的第二转换电路图;
[0040] 图9示出了 X检测电路判断出边界发生扩张的一个例子拟及
[0041] 图10示出了根据本发明一种实施方式的数字集成电路仿真器的结构框图。
【具体实施方式】
[0042] 下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开 的优选实施方式,然而应该理解,可W W各种形式实现本公开而不应被该里阐述的实施方 式所限制。相反,提供该些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的 范围完整地传达给本领域的技术人员。
[0043] 图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框 图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使 用范围带来任何限制。
[0044] 如图1所示,计算机系统/服务器12 W通用计算设备的形式表现。计算机系统 /服务器12的组件可W包括但不限于;一个或者多个处理器或者处理单元16,系统存储器 28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
[0045] 总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器, 外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举 例来说,该些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC) 总线,增强型ISA总线、视频电子标准协会(VESA)局域总线W及外围组件互连(PCI)总线。
[0046] 计算机系统/服务器12典型地包括多种计算机系统可读介质。该些介质可W是 任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动 的和不可移动的介质。
[0047] 系统存储器28可W包括易失性存储器形式的计算机系统可读介质,例如随机存 取存储器(RAM) 30和/或高速缓存存储器32。计算机系统/服务器12可W进一步包括其 它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34 可W用于读写不可移动的、非易失性磁介质(图1未显示,通常称为"硬盘驱动器")。尽管 图1中未示出,可W提供用于对可移动非易失性磁盘(例如"软盘")读写的磁盘驱动器, W及对可移动非易失性光盘(例如CD-ROM, DVD-ROM或者其它光介质)读写的光盘驱动器。 在该些情况下,每个驱动器可W通过一个或者多个数据介质接口与总线18相连。存储器28 可W包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,该些程序模 块被配置W执行本发明各实施例的功能。
[0048] 具有一组(至少一个)程序模块42的程序/实用工具40,可W存储在例如存储器 28中,该样的程序模块42包括一但不限于一操作系统、…个或者多个应用程序、其它 程序模块W及程序数据,该些示例中的每一个或某种组合中可能包括网络环境的实现。程 序模块42通常执行本发明所描述的实施例中的功能和/或方法。
[0049] 计算机系统/服务器12也可W与一个或多个外部设备14(例如键盘、指向设备、 显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的 设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信 的任何设备(例如网卡,调制解调器等等)通信。该种通信可W通过输入/输出(I/O)接 口 22进行。并且,计算机系统/服务器12还可W
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1