CN111931445A - 用于调试逻辑系统设计的方法、仿真器及存储介质 - Google Patents

用于调试逻辑系统设计的方法、仿真器及存储介质 Download PDF

Info

Publication number
CN111931445A
CN111931445A CN202011068776.9A CN202011068776A CN111931445A CN 111931445 A CN111931445 A CN 111931445A CN 202011068776 A CN202011068776 A CN 202011068776A CN 111931445 A CN111931445 A CN 111931445A
Authority
CN
China
Prior art keywords
target module
gate
runtime information
level netlist
system design
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
Application number
CN202011068776.9A
Other languages
English (en)
Other versions
CN111931445B (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.)
Xinhuazhang Technology Co ltd
Original Assignee
Xinhuazhang Technology 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 Xinhuazhang Technology Co ltd filed Critical Xinhuazhang Technology Co ltd
Priority to CN202011068776.9A priority Critical patent/CN111931445B/zh
Publication of CN111931445A publication Critical patent/CN111931445A/zh
Application granted granted Critical
Publication of CN111931445B publication Critical patent/CN111931445B/zh
Priority to US17/465,167 priority patent/US11625521B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/331Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3652Software debugging using additional hardware in-circuit-emulation [ICE] arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/333Design for testability [DFT], e.g. scan chain or built-in self-test [BIST]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本公开提供一种用于调试逻辑系统设计的方法,其中,所述逻辑系统设计包括待调试的目标模块,所述方法包括:接收与所述逻辑系统设计关联的第一门级网表以及与所述目标模块关联的第二门级网表,其中所述第一门级网表和所述第二门级网表是基于所述逻辑系统设计的描述而生成的;运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息;以及,基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的运行时信息。

Description

用于调试逻辑系统设计的方法、仿真器及存储介质
技术领域
本公开涉及电路技术领域,尤其涉及一种用于调试逻辑系统设计的方法、仿真器及存储介质。
背景技术
仿真器(Emulator)可以原型化(prototype)并且调试一个包括一个或多个模块的逻辑系统设计,所述逻辑系统设计可以是,例如,用于供专门应用的集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)或者片上系统芯片(System-On-Chip,简称SOC)的设计。因此,在仿真器中被测试的逻辑系统设计又可以称为被测试设计(Design UnderTest,简称DUT)。仿真器可以通过一个或多个可配置组件(例如,现场可编程逻辑门阵列(Field Programmable Gate Array ,简称FPGA))来仿真该DUT,包括执行该DUT的各种操作,从而在制造之前就测试并验证DUT的各个模块的功能。
为了实现DUT的一个模块的验证,则需要对该模块进行信号探测(signalprobing)。然而,由于仿真器的逻辑单元和布线资源有限而实现信号探测需要消耗大量的逻辑单元和布线资源,因此对于复杂的DUT进行仿真时,可能由于仿真器的资源不足而出现仿真时间过长、或者仿真失败的情况。
发明内容
有鉴于此,本公开提出了一种用于调试逻辑系统设计的方法、仿真器及存储介质。
本公开的第一方面,提供了一种用于调试逻辑系统设计的方法,其中,所述逻辑系统设计包括待调试的目标模块。所述方法包括:接收与所述逻辑系统设计关联的第一门级网表以及与所述目标模块关联的第二门级网表,其中所述第一门级网表和所述第二门级网表是基于所述逻辑系统设计的描述而生成的;运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息;以及基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的运行时信息。
本公开的第二方面,提供了一种用于调试逻辑系统设计的仿真器,其中,所述逻辑系统设计包括待调试的目标模块,所述仿真器包括:
接口单元,用于连接到主机;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行第一方面所述的方法。
本公开的第三方面,提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储电子装置的一组指令,该组指令用于使所述电子装置执行第一方面所述的方法。
本公开提供的用于调试逻辑系统设计的方法、仿真器及存储介质,由于在运行第一门级网表时获取的是目标模块的输入信号,因此减少了需要探测的信号的数量,使得布线以及仿真更快;在运行第二门级网表时,由于第二门级网表对应于目标模块,减少了仿真的复杂度,释放了布线资源,使得第二门级网表所需的布线和仿真时间也得以减少。这样,在确保能够获取目标模块的完整的运行时信息的前提下,本公开提供的用于调试逻辑系统设计的方法、仿真器及存储介质,能够减少仿真器资源的消耗,并减少复杂设计的仿真调试时间。
附图说明
为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本公开的实施例的一个示例性仿真系统的结构示意图。
图2A 示出了根据本公开的实施例的生成网表的一个示例性流程的示意图。
图2B示出了根据本公开的实施例的与第一门级网表对应的仿真电路的结构示意图。
图2C示出了根据本公开的实施例的与第二门级网表对应的仿真电路的结构示意图。
图3A示出了根据本公开的实施例的一个示例性的电路结构示意图。
图3B示出了根据本公开的实施例的又一个示例性的电路结构示意图。
图4示出了根据本公开的实施例的一种用于调试逻辑系统设计的示例性方法的流程示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“一”或者“一个”并非限定数量,在通常情况下,“一”或者“一个”可以理解为一个或多个。
如上所述,对于复杂的DUT进行仿真时,可能由于仿真器的布线资源不足而出现仿真时间过长、或者仿真失败的情况。伴随着集成电路设计的规模和复杂度的上升,这个问题在近期变得越发严重。
本公开提供的用于调试逻辑系统设计的方法及相关设备,通过接收基于逻辑系统设计产生的第一门级网表和第二门级网表,运行第一门级网表以获得逻辑系统设计的目标模块的输入信号的运行时信息,再基于目标模块的输入信号的运行时信息来运行第二门级网表进而获得目标模块的运行时信息。其中,第一门级网表对应于逻辑系统设计,而第二门级网表对应于目标模块。由于在运行第一门级网表时获取的是目标模块的输入信号,因此减少了需要探测的信号的数量,使得布线以及仿真更快。更进一步,在运行第二门级网表时,由于第二门级网表对应于目标模块,减少了仿真的复杂度,释放了布线资源,使得第二门级网表所需的布线和仿真时间也得以减少。这样,在确保能够获取目标模块的完整的运行时信息的前提下,本公开提供的方法和设备能够减少仿真器资源的消耗,并减少复杂设计的仿真调试时间。
图1示出了根据本公开的实施例的一种仿真系统的示意图。
如图1所示,仿真系统100可以包括仿真器102和主机104。
仿真器102是一种用于仿真被测试设计(DUT)的硬件系统。一个DUT可以包括多个模块。DUT可以是组合逻辑电路、时序逻辑电路、或上述两者的组合。仿真器102可以包括一个或多个可配置电路(例如,FPGA),用于仿真DUT。
仿真器102可以包括接口单元1022,用于与主机104通信地耦接,以进行主机104和仿真器102之间的通信。在一些实施例中,接口单元1022可以包括具有电连接能力的一个或多个接口。例如,接口单元1022可以包括RS232接口、USB接口、LAN口、光纤接口、IEEE1394(火线接口)等。在一些实施例中,接口单元1022可以是无线网络接口。例如,接口单元1022可以是WIFI接口、蓝牙接口等。
仿真器102还可以包括存储器1024,用于存储在仿真过程中DUT产生的信号值。在一些实施例中,仿真过程中DUT产生的信号值可以直接被主机104读取。
主机104可以用于配置仿真器102以仿真一个DUT。该DUT可以是一个完整的逻辑系统设计或一个完整逻辑系统设计的一个或多个目标模块。在一些实施例中,主机104可以是云计算系统中的一个虚拟主机。逻辑系统设计(例如,ASIC或者System-On-Chip)可以由硬件描述语言(例如Verilog、VHDL、System C、或System Verilog)设计。在一些实施例中,逻辑系统设计可以包括一个或多个待调试(debug)的目标模块。
主机104可以从用户接收调试DUT的请求。如上所述,DUT可以包括一个或多个模块。DUT及其模块的描述可以用硬件描述语言来完成。主机104可以基于DUT及其模块的描述来进行综合,以生成,例如,DUT的门级网表。
在现有技术中,通常直接对DUT进行完整的信号探测。在对较为复杂的逻辑系统设计进行仿真和验证时,由于用于仿真DUT的可配置电路(例如,FPGA)的逻辑单元和布线资源有限,仿真和验证可能由于资源不足而产生仿真时间过长或仿真失败的问题。
图2A 示出了根据本公开的实施例的生成网表的一个示例性流程200的示意图。
在一些实施例中,如图2A所示,主机104可以接收逻辑系统设计的描述1042以及调试逻辑系统设计的多个模块中的一个目标模块的请求1044。如上所述,该逻辑系统设计的描述1042可以用硬件描述语言来完成。该请求1044可以是用户通过操作主机104发出的调试该逻辑系统设计中的一个目标模块的请求。可以理解的是,在一些实施例中,用户可能一次性发出调试多个目标模块的请求,主机104根据该调试多个目标模块的请求,生成多个调试单一目标模块的请求,用于顺序地或并行地执行这些调试单一目标模块的请求。
根据上述请求1044,主机104可以根据逻辑系统设计的描述1042,来生成第一门级网表202和第二门级网表204。例如,可以通过主机104上运行的硬件描述语言的编译器来综合逻辑系统设计的描述1042,进而生成对应的门级网表。
因此,门级网表(例如,第一门级网表202和第二门级网表204)也可称为综合后的设计,其中描述了电路结构和连接关系,用于仿真DUT的可配置电路(例如,FPGA)在载入门级网表后可运行相应的电路。第一门级网表202与该逻辑系统设计关联,也就是说,第一门级网表202描述了该逻辑系统设计的电路结构。而第二门级网表204与该目标模块关联,也就是说,第二门级网表204描述了该目标模块的电路结构。
综合产生的第一门级网表202和第二门级网表204可以经由接口单元1022被仿真器102接收。
通过根据门级网表在可配置电路中仿真一个DUT(例如,完整的逻辑系统设计或其中的一个目标模块),仿真器102可以获取该逻辑系统设计的各种信号的运行时信息。运行时信息可以是DUT的门级电路在运行时的输入信号或输出信号的在至少一个时刻的信号值。一个DUT(例如,逻辑系统设计或一个目标模块)的运行时信息可以包括DUT的多个门级电路(例如,全部门级电路)的输入信号或输出信号的运行时信息。运行时信息可以包括某一输入信号或输出信号在整个运行期间或一段期间的信号值。运行时信息可以用,例如,波形图、数据表格、离散的平面坐标点等形式来表达。
仿真器102可以运行第一门级网表202以获得该目标模块的输入信号的运行时信息。如图2A所示,第一门级网表202可以包括第一信号探测电路的网表2022和逻辑系统设计的网表2024。其中,第一信号探测电路可以用于探测目标模块的输入信号的运行时信息。
图2B示出了根据本公开的实施例的与第一门级网表202对应的仿真电路210的结构示意图。在一些实施例中,仿真器102将第一门级网表202载入可配置电路(例如,FPGA)进行运行,从而在可配置电路中形成仿真的电路(例如,图2B的仿真电路210)。
由于第一门级网表202包括完整的逻辑系统设计网表2024,因此与第一门级网表202对应的仿真电路210可以包括逻辑系统设计212。而通过运行逻辑系统设计212可以产生完整的逻辑系统设计的运行时信息,包括目标模块的运行时信息。如图2B所示,仿真电路210还可以包括目标模块214以及第一信号探测电路216。由于仿真电路210包括逻辑系统设计212和目标模块214,并且可以产生完整的逻辑系统设计的运行时信息,因此仿真器102可以通过运行与第一门级网表202对应的仿真电路210来产生目标模块214的输入信号2142。而这些输入信号2142是可探测的。
第一信号探测电路216可以被配置为在运行逻辑系统设计212时探测目标模块214的输入信号2142的运行时信息。该目标模块214的输入信号2142的运行时信息可以被保存到仿真器102的存储器1024或经由接口单元1022保存到主机104。由于第一信号探测电路216被配置为探测目标模块214的输入信号2142的运行时信息,相对于探测整个逻辑系统设计212的运行时信息,探测目标模块214的输入信号2142的运行时信息并不会占用太多仿真器102的布线资源。
基于目标模块的输入信号的运行时信息,仿真器102可以进一步运行第二门级网表204以获得目标模块214的运行时信息。通过运行第二门级网表204,仿真器102可以生成与第二门级网表204对应的仿真电路。
图2C示出了根据本公开的实施例的与第二门级网表204对应的仿真电路220的结构示意图。
由于第二门级网表204包括目标模块网表2044和第二信号探测电路网表2042(如图2A所示),因此运行与第二门级网表204对应的仿真电路220可以产生目标模块的运行时信息并可以由第二信号探测电路探测。如图2C所示,与第二门级网表204对应的仿真电路220可以包括目标模块214和第二信号探测电路222。目标模块214可以进一步包括多个组合逻辑电路2144和多个时序逻辑电路2146。在图2C中,以触发器(FF)来代表时序逻辑电路。可以理解的是,时序逻辑电路并不限于触发器。由于目标模块214的输入信号(例如,图2B的输入信号2142)已经在运行第一门级网表202时获取,因此第二门级网表的仿真电路220可以将输入信号2142作为目标模块214的激励信号并基于输入信号2142获得目标模块214的运行时信息。
如图2C所示,第二信号探测电路222可以至少探测多个时序逻辑电路2146的输出信号的运行时信息。对于目标模块214的多个组合逻辑电路2144而言,其激励信号可以包括来自时序逻辑电路2146的输出信号和目标模块214的输入信号2142。在一些实施例中,激励信号还可以包括目标模块214的内部存储器的输出信号(未示出)的至少一个。
因为目标模块214的内部电路结构是已知的(例如,根据第二门级网表204获取),所以可以至少根据目标模块214的输入信号2142的运行时信息和目标模块214的多个时序逻辑电路2146的输出信号的运行时信息,生成目标模块214的组合逻辑电路2144的输出信号的运行时信息。在一些实施例中,可以根据目标模块214的输入信号2142的运行时信息、目标模块214的多个时序逻辑电路2146的输出信号的运行时信息以及目标模块214的内部存储器的输出信号的运行时信息,生成目标模块214的组合逻辑电路2144的输出信号的运行时信息。
图3A示出了一种示例性的电路结构300。如图3A所示,该电路结构可以包括多个触发器(FF)和多个组合逻辑电路(CL)组件。可理解的是,一个组合逻辑电路组件可以包括至少一个组合逻辑电路。除了触发器的输出信号之外,一个组合逻辑电路组件的输入信号还可以包括其所属目标模块的输入信号或另一组合逻辑电路组件的输出信号。
图3B示出了一个示例性的组合逻辑电路组件的电路结构310。可以理解的是,电路结构300或电路结构310均可以根据电路结构的描述来获取。
如图3B所示,假定每一个门电路的延迟都是“delay”,FF0-FF3的输出信号的值在T0时刻分别是“0”、“1”、“1”、“1”,而FF4的输入信号的值在T0+delay*2时刻是“1”。基于FF0-FF4的输出信号的运行时信息(例如,在T0时刻的信号值)以及已知目标模块的电路结构,可以得出与门312的输入在T0时刻是“01”而其输出在T0+delay时刻是“0”,与门314的输入在T0时刻是“11”而其输出在T0+delay时刻是“1”,或门316的输入在T0+delay时刻是“01”而其输出在T0+delay*2时刻是“1”。由于或门316的输出也就是FF4在下一个时刻的输出,因此可以根据FF0-FF3的输出信号的运行时信息,计算FF4的输出信号的运行时信息。
如以上参考图2C所述,FF4的输出信号可以被第二信号探测电路222探测得到。因此,通过比较计算出的FF4的输出信号以及探测出的FF4的输出信号,还可以对电路结构310进行自验证。
类似地,可以基于触发器的信号的运行时信息和目标模块的组合逻辑电路的结构而全部获取得到目标模块的组合逻辑电路的所有信号的运行时信息。也就是说,包括触发器的信号和组合逻辑电路的信号在内的目标模块的所有信号得到了探测。所获取的目标模块的所有信号的运行时信息可以被保存为一个文件,用于后续对目标模块进行调试工作。
图4示出了根据本公开的实施例的一种用于调试逻辑系统设计的示例性方法400的流程示意图。该逻辑系统设计包括待调试的目标模块,且该目标模块包括多个时序逻辑电路和多个组合逻辑电路。方法400例如可以由图1的仿真器102实施。方法400可以包括如下步骤。
在步骤402,可以接收与所述逻辑系统设计关联的第一门级网表(例如,图2A的第一门级网表202)以及与所述目标模块关联的第二门级网表(例如,图2A的第二门级网表204)。其中,所述第一门级网表和所述第二门级网表是基于所述逻辑系统设计的描述(例如,图2A的描述1042)而生成的。如图2A所示,第一门级网表202和第二门级网表204可以是基于逻辑系统设计的描述(例如图2A所示的逻辑系统设计的描述1042)而生成的。
在一些实施例中,待测的目标模块是根据用户请求(例如,图2A的请求1044)来确定的。
在步骤404,可以运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息。例如,如图2B所示,仿真器102将第一门级网表202载入FPGA进行运行,从而在FPGA中形成仿真的电路(例如,图2B的仿真电路210)。由于第一门级网表202包括完整的逻辑系统设计的门级电路描述(例如,图2A的逻辑系统设计网表2024),因此运行与第一门级网表对应的仿真电路210可以产生完整的逻辑系统设计的运行时信息,包括目标模块的运行时信息。
在一些实施例中,所述第一门级网表包括用于探测所述目标模块的输入信号的运行时信息的第一信号探测电路的门级电路描述(例如,图2A的第一信号探测电路网表2022)。运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息,进一步包括:利用所述第一信号探测电路(例如图2B所示的第一信号探测电路216),在运行所述第一门级网表时探测所述目标模块的输入信号的运行时信息。
在步骤406,基于所述目标模块的输入信号的运行时信息,可以运行所述第二门级网表以获得所述目标模块的运行时信息。如图2C所示,由于第二门级网表204包括目标模块的门级电路描述(例如,图2A的目标模块网表2044),因此运行与第二门级网表对应的仿真电路220可以产生目标模块214的运行时信息。
在一些实施例中,所述运行所述第二门级网表以获得所述目标模块的运行时信息进一步包括:基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的多个时序逻辑电路(例如,图2C的时序逻辑电路2146)的输出信号的运行时信息;以及至少根据所述目标模块的输入信号和所述目标模块的多个时序逻辑电路(例如,图2C的时序逻辑电路2146)的输出信号的运行时信息,生成所述目标模块的运行时信息。
在一些实施例中,所述第二门级网表包括用于探测所述目标模块的多个时序逻辑电路的输出信号的运行时信息的第二信号探测电路的门级电路描述(例如,图2A的第二信号探测电路网表2042)。因此,基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的多个时序逻辑电路的输出信号的运行时信息,还可以进一步包括:利用所述第二信号探测电路(例如图2C所示的第二信号探测电路222),在运行所述第二门级网表时探测所述目标模块的多个时序逻辑电路(例如,图2C的时序逻辑电路2146)的输出信号的运行时信息。
在一些实施例中,所述生成所述目标模块的运行时信息进一步包括:根据所述目标模块的多个组合逻辑电路(例如,图2C的组合逻辑电路2144)的激励信号的运行时信息,基于所述目标模块的电路结构,生成所述目标模块的多个组合逻辑电路的输出信号的运行时信息,其中,所述激励信号至少包括所述目标模块的输入信号和所述目标模块的多个时序逻辑电路(例如,图2C的时序逻辑电路2146)的输出信号。在一些实施例中,所述目标模块还包括存储器(例如,图1所示的存储器1024),并且所述激励信号还可以包括所述存储器的输出信号。
在一些实施例中,可以根据所述逻辑系统设计的描述确定所述目标模块的电路结构。例如,根据逻辑系统设计的描述所生成的门级网表可以包括逻辑系统设计内部的门级电路的电路结构,因而也就包括了所述目标模块的电路结构。根据所述激励信号和所述目标模块的电路结构,可以根据图3A-B的描述类似地计算所述目标模块的多个组合逻辑电路的输出信号的运行时信息。
在一些实施例中,所述目标模块的多个时序逻辑电路包括触发器(例如,图2C的时序逻辑电路2146)、寄存器、计数器、或顺序脉冲发生器的至少一种。
在一些实施例中,方法400还可以包括:基于所述目标模块的多个时序逻辑电路的输出信号的运行时信息,至少根据所述目标模块的输入信号和所述目标模块的多个时序逻辑电路的输出信号的运行时信息,对所述目标模块进行自验证。例如,如图3B所示,可以根据计算出的FF4的输出信号以及探测出的FF4的输出信号来完成自验证。
在步骤408,基于所述目标模块的运行时信息,可以对所述目标模块进行调试。例如,可以根据目标模块的运行时信息找出错误的信号,并根据错误的信号对目标模块的设计进行修改,以消除错误。
上述对本公开特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。 在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
参考图1所示,所述用于调试逻辑系统设计的仿真器102可以包括:接口单元1022,用于连接到主机104;存储器1024,用于存储一组指令;以及至少一个处理器,被配置为执行该组指令以进行前述的用于调试逻辑系统设计的方法的任一实施例或实施例的排列、组合。
在一些实施例中,所述仿真器102被进一步配置为将所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息发送到所述主机104,以使得所述主机104,根据所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息,生成所述目标模块的运行时信息。例如,仿真器102将所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息暂时性地存放在仿真器102的存储器1024(如图1所示)中,并根据指令(例如,来自用户的指令)将所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息发送到所述主机104,以进行进一步的计算。
需要说明的是,本公开的实施例还可以以下方式进一步描述:
1、一种用于调试逻辑系统设计的方法,其中,所述逻辑系统设计包括待调试的目标模块,所述方法包括:
接收与所述逻辑系统设计关联的第一门级网表以及与所述目标模块关联的第二门级网表,其中所述第一门级网表和所述第二门级网表是基于所述逻辑系统设计的描述而生成的;
运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息;以及
基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的运行时信息。
2、根据第1项所述的方法,其中,所述目标模块包括多个时序逻辑电路和多个组合逻辑电路,并且所述运行所述第二门级网表以获得所述目标模块的运行时信息进一步包括:
基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的多个时序逻辑电路的输出信号的运行时信息;以及
至少根据所述目标模块的输入信号和所述目标模块的多个时序逻辑电路的输出信号的运行时信息,生成所述目标模块的运行时信息。
3、根据第1项或第2项所述的方法,其中,所述第一门级网表包括用于探测所述目标模块的输入信号的运行时信息的第一信号探测电路的门级电路描述,并且运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息,进一步包括:
利用所述第一信号探测电路,在运行所述第一门级网表时探测所述目标模块的输入信号的运行时信息。
4、根据第1-3项的任一项所述的方法,其中,所述第二门级网表包括用于探测所述目标模块的多个时序逻辑电路的输出信号的运行时信息的第二信号探测电路的门级电路描述,并且基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的多个时序逻辑电路的输出信号的运行时信息,进一步包括:
利用所述第二信号探测电路,在运行所述第二门级网表时探测所述目标模块的多个时序逻辑电路的输出信号的运行时信息。
5、根据第1-4项的任一项所述的方法,其中,所述生成所述目标模块的运行时信息进一步包括:
根据所述目标模块的多个组合逻辑电路的激励信号的运行时信息, 基于所述目标模块的电路结构,生成所述目标模块的多个组合逻辑电路的输出信号的运行时信息,其中,所述激励信号至少包括所述目标模块的输入信号和所述目标模块的多个时序逻辑电路的输出信号。
6、根据第1-5项的任一项所述的方法,其中,根据所述逻辑系统设计的描述确定所述目标模块的电路结构。
7、根据第1-6项的任一项所述的方法,其中,所述目标模块还包括存储器,并且所述激励信号还进一步包括所述存储器的输出信号。
8、根据第1-7项的任一项所述的方法,其中,所述目标模块的多个时序逻辑电路包括触发器、寄存器、计数器、或顺序脉冲发生器的至少一种。
9、根据第1-8项的任一项所述的方法,其中,所述目标模块是根据用户请求来确定的。
10、一种用于调试逻辑系统设计的仿真器,其中,所述逻辑系统设计包括待调试的目标模块,所述仿真器包括:
接口单元,用于连接到主机;
存储器,用于存储一组指令;以及
至少一个处理器,被配置为执行该组指令以进行如下方法:
接收与所述逻辑系统设计关联的第一门级网表以及与所述目标模块关联的第二门级网表,其中所述第一门级网表和所述第二门级网表是基于所述逻辑系统设计的描述而生成的;
运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息;以及
基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的运行时信息。
11、根据第10项所述的仿真器,其中,所述目标模块包括多个时序逻辑电路和多个组合逻辑电路,并且所述至少一个处理器被配置为执行该组指令以进行如下方法:
基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的多个时序逻辑电路的输出信号的运行时信息;以及
至少根据所述目标模块的输入信号和所述目标模块的多个时序逻辑电路的输出信号的运行时信息,生成所述目标模块的运行时信息。
12、根据第10项或第11项所述的仿真器,其中,所述第一门级网表包括用于探测所述目标模块的输入信号的运行时信息的第一信号探测电路的门级电路描述,并且所述至少一个处理器被配置为执行该组指令以进行如下方法:
利用所述第一信号探测电路,在运行所述第一门级网表时探测所述目标模块的输入信号的运行时信息。
13、根据第10-12项的任一项所述的仿真器,其中,所述第二门级网表包括用于探测所述目标模块的多个时序逻辑电路的输出信号的运行时信息的第二信号探测电路的门级电路描述,并且所述至少一个处理器被配置为执行该组指令以进行如下方法:
利用所述第二信号探测电路,在运行所述第二门级网表时探测所述目标模块的多个时序逻辑电路的输出信号的运行时信息。
14、根据第10-13项的任一项所述的仿真器,其中,所述至少一个处理器被配置为执行该组指令以进行如下方法:
根据所述目标模块的多个组合逻辑电路的激励信号的运行时信息, 基于所述目标模块的电路结构,生成所述目标模块的多个组合逻辑电路的输出信号的运行时信息,其中,所述激励信号至少包括所述目标模块的输入信号和所述目标模块的多个时序逻辑电路的输出信号。
15、根据第10-14项的任一项所述的仿真器,其中,所述至少一个处理器被配置为执行该组指令以进行如下方法:
根据所述逻辑系统设计的描述确定所述目标模块的电路结构。
16、根据第10-15项的任一项所述的仿真器,其中,所述目标模块还包括存储器,并且所述激励信号还进一步包括所述存储器的输出信号。
17、根据第10-16项的任一项所述的仿真器,其中,所述目标模块的多个时序逻辑电路包括触发器、寄存器、计数器、或顺序脉冲发生器的至少一种。
18、根据第10-17项的任一项所述的仿真器,其中,所述目标模块是根据用户指令来确定的。
19、根据第10-18项的任一项所述的仿真器,其中,
所述仿真器被进一步配置为将所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息发送到所述主机,以使得所述主机,根据所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息,生成所述目标模块的运行时信息。
20、一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储电子装置的一组指令,该组指令用于使所述电子装置执行一种用于调试逻辑系统设计的方法,其中,所述逻辑系统设计包括待调试的目标模块,所述方法包括:
接收与所述逻辑系统设计关联的第一门级网表以及与所述目标模块关联的第二门级网表,其中所述第一门级网表和所述第二门级网表是基于所述逻辑系统设计的描述而生成的;
运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息;以及
基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的运行时信息。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本公开时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (12)

1.一种用于调试逻辑系统设计的方法,其中,所述逻辑系统设计包括待调试的目标模块,所述方法包括:
接收与所述逻辑系统设计关联的第一门级网表以及与所述目标模块关联的第二门级网表,其中所述第一门级网表和所述第二门级网表是基于所述逻辑系统设计的描述而生成的;
运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息;以及
基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的运行时信息。
2.根据权利要求1所述的方法,其中,所述目标模块包括多个时序逻辑电路和多个组合逻辑电路,并且所述运行所述第二门级网表以获得所述目标模块的运行时信息进一步包括:
基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的多个时序逻辑电路的输出信号的运行时信息;以及
至少根据所述目标模块的输入信号和所述目标模块的多个时序逻辑电路的输出信号的运行时信息,生成所述目标模块的运行时信息。
3.根据权利要求1或2所述的方法,其中,所述第一门级网表包括用于探测所述目标模块的输入信号的运行时信息的第一信号探测电路的门级电路描述,并且运行所述第一门级网表以获得所述目标模块的输入信号的运行时信息,进一步包括:
利用所述第一信号探测电路,在运行所述第一门级网表时探测所述目标模块的输入信号的运行时信息。
4.根据权利要求2所述的方法,其中,所述第二门级网表包括用于探测所述目标模块的多个时序逻辑电路的输出信号的运行时信息的第二信号探测电路的门级电路描述,并且基于所述目标模块的输入信号的运行时信息,运行所述第二门级网表以获得所述目标模块的多个时序逻辑电路的输出信号的运行时信息,进一步包括:
利用所述第二信号探测电路,在运行所述第二门级网表时探测所述目标模块的多个时序逻辑电路的输出信号的运行时信息。
5.根据权利要求2或4所述的方法,其中,所述生成所述目标模块的运行时信息进一步包括:
根据所述目标模块的多个组合逻辑电路的激励信号的运行时信息, 基于所述目标模块的电路结构,生成所述目标模块的多个组合逻辑电路的输出信号的运行时信息,其中,所述激励信号至少包括所述目标模块的输入信号和所述目标模块的多个时序逻辑电路的输出信号。
6.根据权利要求5所述的方法,其中,根据所述逻辑系统设计的描述确定所述目标模块的电路结构。
7.根据权利要求5所述的方法,其中,所述目标模块还包括存储器,并且所述激励信号还进一步包括所述存储器的输出信号。
8.根据权利要求2或4所述的方法,其中,所述目标模块的多个时序逻辑电路包括触发器、寄存器、计数器、或顺序脉冲发生器的至少一种。
9.根据权利要求1所述的方法,其中,所述目标模块是根据用户请求来确定的。
10.一种用于调试逻辑系统设计的仿真器,其中,所述逻辑系统设计包括待调试的目标模块,所述仿真器包括:
接口单元,用于连接到主机;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行如权利要求1至9任意一项所述的方法。
11.根据权利要求10所述的仿真器,其中,
所述仿真器被进一步配置为将所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息发送到所述主机,以使得所述主机,根据所述目标模块的输入信号的运行时信息和所述目标模块的多个时序逻辑电路的输出信号的运行时信息,生成所述目标模块的运行时信息。
12.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储电子装置的一组指令,该组指令用于使所述电子装置执行权利要求1至9任一项所述的方法。
CN202011068776.9A 2020-10-09 2020-10-09 用于调试逻辑系统设计的方法、仿真器及存储介质 Active CN111931445B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011068776.9A CN111931445B (zh) 2020-10-09 2020-10-09 用于调试逻辑系统设计的方法、仿真器及存储介质
US17/465,167 US11625521B2 (en) 2020-10-09 2021-09-02 Method, emulator, and storage media for debugging logic system design

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011068776.9A CN111931445B (zh) 2020-10-09 2020-10-09 用于调试逻辑系统设计的方法、仿真器及存储介质

Publications (2)

Publication Number Publication Date
CN111931445A true CN111931445A (zh) 2020-11-13
CN111931445B CN111931445B (zh) 2020-12-29

Family

ID=73333698

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011068776.9A Active CN111931445B (zh) 2020-10-09 2020-10-09 用于调试逻辑系统设计的方法、仿真器及存储介质

Country Status (2)

Country Link
US (1) US11625521B2 (zh)
CN (1) CN111931445B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100957A (zh) * 2020-11-17 2020-12-18 芯华章科技股份有限公司 用于调试逻辑系统设计的方法、仿真器、存储介质
CN112434478A (zh) * 2021-01-26 2021-03-02 芯华章科技股份有限公司 仿真逻辑系统设计的虚拟接口的方法及相关设备
CN112632880A (zh) * 2020-12-28 2021-04-09 芯华章科技股份有限公司 用于逻辑系统设计的编译方法、电子设备及存储介质
CN112860226A (zh) * 2021-01-28 2021-05-28 芯华章科技股份有限公司 获取逻辑系统设计的初始状态的方法、电子设备及介质
CN113128144A (zh) * 2021-05-07 2021-07-16 芯华章科技股份有限公司 用于验证逻辑系统设计的原型验证系统及仿真平台
CN113283203A (zh) * 2021-07-21 2021-08-20 芯华章科技股份有限公司 用于仿真逻辑系统设计的方法、电子设备及存储介质
CN114329644A (zh) * 2021-11-17 2022-04-12 芯华章科技股份有限公司 对逻辑系统设计进行加密仿真的方法、设备及存储介质
CN114546823A (zh) * 2021-12-27 2022-05-27 芯华章科技股份有限公司 用于重现逻辑系统设计的调试场景的方法及相关设备
WO2023283891A1 (zh) * 2021-07-15 2023-01-19 华为技术有限公司 用于仿真的方法、装置及设备
CN115809620A (zh) * 2022-11-25 2023-03-17 芯华章科技(北京)有限公司 仿真逻辑系统设计的方法、电子设备和存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115455876B (zh) * 2022-09-21 2023-09-22 芯华章科技(北京)有限公司 用于调试逻辑系统设计的方法及电子设备
CN116522831B (zh) * 2023-07-04 2023-09-19 奇捷科技(深圳)有限公司 门级网表的更正方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1696328A2 (en) * 2005-02-28 2006-08-30 Kabushiki Kaisha Toshiba Method for verifying safety apparatus and safety apparatus verified by the same
CN104598659A (zh) * 2013-10-31 2015-05-06 国际商业机器公司 对数字电路进行仿真的方法和设备
US20160328499A1 (en) * 2015-05-04 2016-11-10 Synopsys, Inc. Efficient Waveform Generation for Emulation
CN110308381A (zh) * 2019-05-29 2019-10-08 深圳市紫光同创电子有限公司 一种fpga输入输出逻辑模块的内建自测方法及系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002328964A (ja) * 2001-05-02 2002-11-15 Nec Corp 論理検証システム
JP2003085221A (ja) * 2001-09-10 2003-03-20 Nec Corp Rtl自動階層化システムおよび方法、rtl自動階層化プログラム
US7117458B1 (en) * 2002-04-30 2006-10-03 Unisys Corporation Identifying specific netlist gates for use in code coverage testing
WO2007146849A1 (en) * 2006-06-09 2007-12-21 Lightspeed Logic, Inc. Transparent test method and scan flip-flop
US9501589B2 (en) * 2008-05-07 2016-11-22 Mentor Graphics Corporation Identification of power sensitive scan cells
US20100217564A1 (en) * 2009-02-26 2010-08-26 Lahner Juergen K Advanced physical simulator
JP2014041598A (ja) * 2012-07-23 2014-03-06 Toshiba Corp 論理回路設計方法、論理回路設計プログラム、および論理回路設計システム
US8689155B1 (en) * 2012-09-25 2014-04-01 Infineon Technologies Ag Method of proving formal test bench fault detection coverage
US8930863B2 (en) * 2013-03-14 2015-01-06 Atrenta, Inc. System and method for altering circuit design hierarchy to optimize routing and power distribution using initial RTL-level circuit description netlist
US8949755B2 (en) * 2013-05-06 2015-02-03 International Business Machines Corporation Analyzing sparse wiring areas of an integrated circuit design
US9026966B1 (en) * 2014-03-13 2015-05-05 Cadence Design Systems, Inc. Co-simulation methodology to address performance and runtime challenges of gate level simulations with, SDF timing using emulators
US20170011139A1 (en) * 2015-07-07 2017-01-12 Mentor Graphics Corporation Physically-aware circuit design partitioning
US10664637B2 (en) * 2015-12-28 2020-05-26 Mentor Graphics Corporation Testbench restoration based on capture and replay
CN108153920A (zh) * 2016-12-02 2018-06-12 恩智浦美国有限公司 集成电路设计的rtl阶段期间的时钟门控验证
JP2019133591A (ja) * 2018-02-02 2019-08-08 三菱電機株式会社 Fpga設計支援方法およびプログラム
US11537504B2 (en) * 2019-01-28 2022-12-27 Xepic Corporation Limited Realization of functional verification debug station via cross-platform record-mapping-replay technology
US11321511B2 (en) * 2019-07-09 2022-05-03 SiFive, Inc. Reset crossing and clock crossing interface for integrated circuit generation
US11475168B2 (en) * 2019-07-23 2022-10-18 University Of Florida Research Foundation, Inc. CAD framework for power side-channel vulnerability assessment
US11030380B2 (en) * 2019-08-22 2021-06-08 Taiwan Semiconductor Manufacturing Co., Ltd. Synergistic design method for fabricating integrated circuit
US11216606B1 (en) * 2020-07-30 2022-01-04 Cadence Design Systems, Inc. Method and system for functional safety verification using fault relation rules

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1696328A2 (en) * 2005-02-28 2006-08-30 Kabushiki Kaisha Toshiba Method for verifying safety apparatus and safety apparatus verified by the same
CN104598659A (zh) * 2013-10-31 2015-05-06 国际商业机器公司 对数字电路进行仿真的方法和设备
US20160328499A1 (en) * 2015-05-04 2016-11-10 Synopsys, Inc. Efficient Waveform Generation for Emulation
CN110308381A (zh) * 2019-05-29 2019-10-08 深圳市紫光同创电子有限公司 一种fpga输入输出逻辑模块的内建自测方法及系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100957A (zh) * 2020-11-17 2020-12-18 芯华章科技股份有限公司 用于调试逻辑系统设计的方法、仿真器、存储介质
CN112100957B (zh) * 2020-11-17 2021-02-02 芯华章科技股份有限公司 用于调试逻辑系统设计的方法、仿真器、存储介质
CN112632880A (zh) * 2020-12-28 2021-04-09 芯华章科技股份有限公司 用于逻辑系统设计的编译方法、电子设备及存储介质
CN112434478A (zh) * 2021-01-26 2021-03-02 芯华章科技股份有限公司 仿真逻辑系统设计的虚拟接口的方法及相关设备
CN112860226A (zh) * 2021-01-28 2021-05-28 芯华章科技股份有限公司 获取逻辑系统设计的初始状态的方法、电子设备及介质
CN113128144A (zh) * 2021-05-07 2021-07-16 芯华章科技股份有限公司 用于验证逻辑系统设计的原型验证系统及仿真平台
WO2023283891A1 (zh) * 2021-07-15 2023-01-19 华为技术有限公司 用于仿真的方法、装置及设备
CN113283203A (zh) * 2021-07-21 2021-08-20 芯华章科技股份有限公司 用于仿真逻辑系统设计的方法、电子设备及存储介质
CN114329644A (zh) * 2021-11-17 2022-04-12 芯华章科技股份有限公司 对逻辑系统设计进行加密仿真的方法、设备及存储介质
CN114546823A (zh) * 2021-12-27 2022-05-27 芯华章科技股份有限公司 用于重现逻辑系统设计的调试场景的方法及相关设备
CN114546823B (zh) * 2021-12-27 2023-09-12 芯华章科技股份有限公司 用于重现逻辑系统设计的调试场景的方法及相关设备
CN115809620A (zh) * 2022-11-25 2023-03-17 芯华章科技(北京)有限公司 仿真逻辑系统设计的方法、电子设备和存储介质
CN115809620B (zh) * 2022-11-25 2023-11-14 芯华章科技(北京)有限公司 仿真逻辑系统设计的方法、电子设备和存储介质

Also Published As

Publication number Publication date
US11625521B2 (en) 2023-04-11
US20220114312A1 (en) 2022-04-14
CN111931445B (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
CN111931445B (zh) 用于调试逻辑系统设计的方法、仿真器及存储介质
US8639981B2 (en) Flexible SoC design verification environment
US8788886B2 (en) Verification of SoC scan dump and memory dump operations
US9703579B2 (en) Debug environment for a multi user hardware assisted verification system
CN112100957B (zh) 用于调试逻辑系统设计的方法、仿真器、存储介质
CN105930242B (zh) 一种支持精确访存检测的多核处理器随机验证方法及装置
CN112417798B (zh) 一种时序测试方法、装置、电子设备及存储介质
CN115146568B (zh) 一种基于uvm的芯片验证系统及验证方法
US10664563B2 (en) Concurrent testbench and software driven verification
CN115688676A (zh) 基于tlm的gpu联合仿真系统
CN110765716A (zh) 数字产品的仿真信号查看方法及系统
US10664637B2 (en) Testbench restoration based on capture and replay
CN117076337B (zh) 一种数据传输方法、装置、电子设备及可读存储介质
CN116070564A (zh) 基于芯片待测设计的仿真通信方法及装置
CN115935870A (zh) 功耗分析方法、装置、电子设备、存储介质
CN115618800A (zh) 基于dpi的gpu联合仿真系统
Rashmi et al. A methodology to reuse random IP stimuli in an SoC functional verification environment
US9946624B1 (en) Systems and methods to capture data signals from a dynamic circuit
EP4204828A1 (en) High-speed functional protocol based test and debug
CN110956007A (zh) 数字产品的仿真信号查看方法及系统
CN110765711A (zh) 数字产品的仿真信号查看方法及系统
CN112989736B (zh) 用于检测修改设计的错误实例的方法、设备及存储介质
Meng et al. Functional verification of external memory interface IP core based on restricted random testbench
Sharma et al. Sonar: Writing testbenches through python
CN114169287B (zh) 生成验证环境的连接示意图的方法、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant