[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN117172203A - Methods, electronic devices and storage media for processing script commands - Google Patents

Methods, electronic devices and storage media for processing script commands Download PDF

Info

Publication number
CN117172203A
CN117172203A CN202311153895.8A CN202311153895A CN117172203A CN 117172203 A CN117172203 A CN 117172203A CN 202311153895 A CN202311153895 A CN 202311153895A CN 117172203 A CN117172203 A CN 117172203A
Authority
CN
China
Prior art keywords
script
identifier
script commands
commands
target
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
CN202311153895.8A
Other languages
Chinese (zh)
Other versions
CN117172203B (en
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 CN202311153895.8A priority Critical patent/CN117172203B/en
Publication of CN117172203A publication Critical patent/CN117172203A/en
Application granted granted Critical
Publication of CN117172203B publication Critical patent/CN117172203B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种处理脚本命令的方法、电子设备和存储介质。该方法包括:读取与逻辑系统设计关联的脚本,所述脚本包括多个脚本命令;获取所述脚本中包括的标识符;根据所述标识符在所述多个脚本命令中确定要分析的一个或多个目标脚本命令;运行所述脚本以获取与所述一个或多个目标脚本命令对应的日志消息;以及根据所述标识符分析所述日志消息。

This application provides a method, electronic device, and storage medium for processing script commands. The method includes: reading a script associated with a logical system design, the script including a plurality of script commands; obtaining an identifier included in the script; and determining a component to be analyzed among the plurality of script commands according to the identifier. one or more target script commands; running the script to obtain a log message corresponding to the one or more target script commands; and analyzing the log message based on the identifier.

Description

处理脚本命令的方法、电子设备和存储介质Methods, electronic devices and storage media for processing script commands

技术领域Technical field

本申请涉及芯片验证技术领域,尤其涉及一种处理脚本命令的方法、电子设备和存储介质。This application relates to the field of chip verification technology, and in particular, to a method, electronic device, and storage medium for processing script commands.

背景技术Background technique

硬件仿真工具(例如,原型验证板或硬件仿真器(emulator))可以原型化(prototype)并且调试一个包括一个或多个模块的逻辑系统设计。所述逻辑系统设计可以是,例如,用于供专门应用的集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)或者片上系统芯片(System-On-Chip,简称SOC)的设计。因此,在仿真工具中被测试的逻辑系统设计又可以称为待测设计(DesignUnderTest,简称DUT)。仿真工具可以通过一个或多个可配置组件(例如,现场可编程逻辑门阵列(FieldProgrammableGateArray,简称FPGA))来仿真该待测设计,包括执行该待测设计的各种操作,从而在制造之前就测试并验证待测设计的各个模块的功能。通过在仿真工具上外接多种外设子卡还可以测试待测设计与各种外设作为一个完整系统进行运行的效果。Hardware simulation tools (eg, prototype verification boards or emulators) can prototype and debug a logic system design that includes one or more modules. The logic system design may be, for example, a design for an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC for short) or a system-on-chip (System-On-Chip, SOC for short). Therefore, the logic system design tested in the simulation tool can also be called the design under test (DesignUnderTest, referred to as DUT). The simulation tool can simulate the design under test through one or more configurable components (for example, Field Programmable Gate Array (FPGA)), including performing various operations of the design under test, so as to predict the design before manufacturing. Test and verify the functionality of various modules of the design under test. By connecting multiple peripheral daughter cards to the simulation tool, you can also test the effect of the design under test and various peripherals running as a complete system.

与硬件仿真工具配套还有诸多软件,比如编译器、综合器、调试器等。There are many software supporting hardware simulation tools, such as compilers, synthesizers, debuggers, etc.

编译器用于编译逻辑系统设计的源代码,综合器用于将逻辑系统设计综合为网表形式并且烧录到FPGA中,调试器则用于实现一些简单的调试功能。可以理解的是,上述软件运行在于硬件仿真工具连接的主机上。The compiler is used to compile the source code of the logic system design, the synthesizer is used to synthesize the logic system design into a netlist form and burn it into the FPGA, and the debugger is used to implement some simple debugging functions. It can be understood that the above software runs on the host computer connected to the hardware simulation tool.

逻辑系统设计的调试在很大程度上依赖于对调试命令的执行结果(例如,日志消息)的分析。如何更好地便利日志消息的分析是一个亟待解决的技术问题。Debugging of logical system designs relies heavily on analysis of the execution results of debugging commands (e.g., log messages). How to better facilitate the analysis of log messages is an urgent technical issue that needs to be solved.

发明内容Contents of the invention

本申请的第一方面提供一种处理脚本命令的方法。该方法包括:读取与逻辑系统设计关联的脚本,所述脚本包括多个脚本命令;获取所述脚本中包括的标识符;根据所述标识符在所述多个脚本命令中确定要分析的一个或多个目标脚本命令;运行所述脚本以获取与所述一个或多个目标脚本命令对应的日志消息;以及根据所述标识符分析所述日志消息。A first aspect of the present application provides a method of processing script commands. The method includes: reading a script associated with a logical system design, the script including a plurality of script commands; obtaining an identifier included in the script; and determining a component to be analyzed among the plurality of script commands according to the identifier. one or more target script commands; running the script to obtain a log message corresponding to the one or more target script commands; and analyzing the log message based on the identifier.

本申请的第二方面提供一种电子设备,包括:存储器,用于存储一组指令;以及至少一个处理器,配置为执行所述一组指令以使得所述电子设备执行如第一方面所述的方法。A second aspect of the present application provides an electronic device, including: a memory for storing a set of instructions; and at least one processor configured to execute the set of instructions to cause the electronic device to perform as described in the first aspect Methods.

本申请的第三方面提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机的一组指令,该组指令用于在被执行时使所述计算机执行如第一方面所述的方法。A third aspect of the present application provides a non-transitory computer-readable storage medium storing a set of instructions for a computer that, when executed, cause the computer to perform: The method described in the first aspect.

附图说明Description of drawings

为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in this application or related technologies, the drawings needed to be used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the drawings in the following description are only for the purposes of this application. Embodiments, for those of ordinary skill in the art, other drawings can also be obtained based on these drawings without exerting creative efforts.

图1示出了根据本申请实施例的示例性主机的结构示意图。Figure 1 shows a schematic structural diagram of an exemplary host according to an embodiment of the present application.

图2示出了根据本申请实施例的仿真系统的示意图。Figure 2 shows a schematic diagram of a simulation system according to an embodiment of the present application.

图3示出了根据本申请实施例的调试工具的结构示意图。Figure 3 shows a schematic structural diagram of a debugging tool according to an embodiment of the present application.

图4示出了根据本申请实施例的一种处理脚本命令的方法的流程图。Figure 4 shows a flow chart of a method for processing script commands according to an embodiment of the present application.

具体实施方式Detailed ways

为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。In order to make the purpose, technical solutions and advantages of the present application more clear, the present application will be further described in detail below in conjunction with specific embodiments and with reference to the accompanying drawings.

需要说明的是,除非另外定义,本申请使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。It should be noted that, unless otherwise defined, the technical terms or scientific terms used in this application should have the usual meanings understood by those with ordinary skills in the field to which this application belongs. "First", "second" and similar words used in this application do not indicate any order, quantity or importance, but are only used to distinguish different components. Words such as "include" and similar means that the elements or things appearing before the word include the elements or things listed after the word and their equivalents, without excluding other elements or things. "Connect" and similar words are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect.

如上所述,对逻辑系统设计的调试很大程度上依赖于在执行脚本命令后获取的日志消息。但是,在调试过程中执行的脚本文件通常有很多个,而每个脚本命令执行之后都会产生对应的大量的日志消息。这使得用户很难在大量的日志消息中找到自己关心的那个脚本命令的执行结果,更不要说进行分析了。As mentioned above, debugging logical system designs relies heavily on log messages obtained after executing script commands. However, there are usually many script files executed during debugging, and a corresponding large number of log messages will be generated after each script command is executed. This makes it difficult for users to find the execution results of the script commands they care about in a large number of log messages, let alone analyze them.

因此,如何精确定位关心的脚本命令、获取执行该命令产生的日志消息并且进而分析这些日志消息是一个亟待解决的技术问题。Therefore, how to accurately locate the script command of concern, obtain the log messages generated by executing the command, and then analyze these log messages is an urgent technical problem that needs to be solved.

本申请针对该技术问题提供了一种处理脚本命令的方法、电子设备和存储介质。This application provides a method, electronic device, and storage medium for processing script commands to address this technical problem.

图1示出了根据本申请实施例的主机100的结构示意图。主机100可以是运行仿真系统的电子设备。如图1所示,主机100可以包括:处理器102、存储器104、网络接口106、外围接口108和总线110。其中,处理器102、存储器104、网络接口106和外围接口108通过总线110实现彼此之间在电子设备内部的通信连接。Figure 1 shows a schematic structural diagram of a host 100 according to an embodiment of the present application. The host 100 may be an electronic device running the simulation system. As shown in FIG. 1 , the host 100 may include: a processor 102 , a memory 104 , a network interface 106 , a peripheral interface 108 and a bus 110 . Among them, the processor 102, the memory 104, the network interface 106 and the peripheral interface 108 implement communication connections between each other within the electronic device through the bus 110.

处理器102可以是中央处理器(Central Processing Unit,CPU)、图像处理器、神经网络处理器(NPU)、微控制器(MCU)、可编程逻辑器件、数字信号处理器(DSP)、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路。处理器102可以用于执行与本申请描述的技术相关的功能。在一些实施例中,处理器102还可以包括集成为单一逻辑组件的多个处理器。如图1所示,处理器102可以包括多个处理器102a、102b和102c。The processor 102 may be a central processing unit (CPU), an image processor, a neural network processor (NPU), a microcontroller (MCU), a programmable logic device, a digital signal processor (DSP), an application-specific Integrated circuit (Application Specific Integrated Circuit, ASIC), or one or more integrated circuits. Processor 102 may be used to perform functions related to the techniques described herein. In some embodiments, processor 102 may also include multiple processors integrated into a single logical component. As shown in Figure 1, processor 102 may include multiple processors 102a, 102b, and 102c.

存储器104可以配置为存储数据(例如,指令集、计算机代码、中间数据等)。在一些实施例中,用于仿真测试设计的仿真测试系统可以是存储器104中存储的计算机程序。如图1所示,存储器存储的数据可以包括程序指令(例如,用于实现本申请的定位错误的方法的程序指令)以及要处理的数据(例如,存储器可以存储在编译过程产生的临时代码)。处理器102也可以访问存储器存储的程序指令和数据,并且执行程序指令以对要处理的数据进行操作。存储器104可以包括易失性存储装置或非易失性存储装置。在一些实施例中,存储器104可以包括随机访问存储器(RAM)、只读存储器(ROM)、光盘、磁盘、硬盘、固态硬盘(SSD)、闪存、存储棒等。Memory 104 may be configured to store data (eg, sets of instructions, computer code, intermediate data, etc.). In some embodiments, a simulation test system for simulating a test design may be a computer program stored in memory 104 . As shown in Figure 1, the data stored in the memory may include program instructions (for example, program instructions used to implement the method of locating errors of the present application) and data to be processed (for example, the memory may store temporary codes generated during the compilation process) . The processor 102 may also access program instructions and data stored in memory and execute the program instructions to operate on data to be processed. Memory 104 may include volatile storage or non-volatile storage. In some embodiments, memory 104 may include random access memory (RAM), read only memory (ROM), optical disks, magnetic disks, hard drives, solid state drives (SSD), flash memory, memory sticks, and the like.

网络接口106可以配置为经由网络向主机100提供与其他外部设备的通信。该网络可以是能够传输和接收数据的任何有线或无线的网络。例如,该网络可以是有线网络、本地无线网络(例如,蓝牙、WiFi、近场通信(NFC)等)、蜂窝网络、因特网、或上述的组合。可以理解的是,网络的类型不限于上述具体示例。在一些实施例中,网络接口106可以包括任意数量的网络接口控制器(NIC)、射频模块、接收发器、调制解调器、路由器、网关、适配器、蜂窝网络芯片等的任意组合。Network interface 106 may be configured to provide communication with other external devices to host 100 via a network. The network can be any wired or wireless network capable of transmitting and receiving data. For example, the network may be a wired network, a local wireless network (eg, Bluetooth, WiFi, Near Field Communication (NFC), etc.), a cellular network, the Internet, or a combination thereof. It is understood that the type of network is not limited to the specific examples above. In some embodiments, network interface 106 may include any number and any combination of network interface controllers (NICs), radio frequency modules, transceivers, modems, routers, gateways, adapters, cellular network chips, and the like.

外围接口108可以配置为将主机100与一个或多个外围装置连接,以实现信息输入及输出。例如,外围装置可以包括键盘、鼠标、触摸板、触摸屏、麦克风、各类传感器等输入设备以及显示器、扬声器、振动器、指示灯等输出设备。The peripheral interface 108 may be configured to connect the host 100 with one or more peripheral devices to implement information input and output. For example, peripheral devices may include input devices such as keyboards, mice, touch pads, touch screens, microphones, and various sensors, as well as output devices such as displays, speakers, vibrators, and indicator lights.

总线110可以被配置为在主机100的各个组件(例如处理器102、存储器104、网络接口106和外围接口108)之间传输信息,诸如内部总线(例如,处理器-存储器总线)、外部总线(USB端口、PCI-E总线)等。Bus 110 may be configured to transmit information between various components of host 100 (eg, processor 102, memory 104, network interface 106, and peripheral interface 108), such as an internal bus (eg, processor-memory bus), an external bus (eg, processor-memory bus), USB port, PCI-E bus), etc.

需要说明的是,尽管上述电子设备架构仅示出了处理器102、存储器104、网络接口106、外围接口108和总线110,但是在具体实施过程中,该电子设备架构还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述电子设备架构中也可以仅包含实现本申请实施例方案所必需的组件,而不必包含图中所示的全部组件。It should be noted that although the above-mentioned electronic device architecture only shows the processor 102, the memory 104, the network interface 106, the peripheral interface 108 and the bus 110, during specific implementation, the electronic device architecture may also include all necessary components to achieve normal operation. Required additional components. In addition, those skilled in the art can understand that the above-mentioned electronic device architecture may also include only the components necessary to implement the solutions of the embodiments of the present application, and does not necessarily include all the components shown in the figures.

可以理解的是,上述编译器、综合器、调试器,特别是本申请的调试器,是由主机100运行的。It can be understood that the above-mentioned compiler, synthesizer, and debugger, especially the debugger of this application, are run by the host 100 .

图2示出了根据本申请实施例的仿真系统200的示意图。Figure 2 shows a schematic diagram of a simulation system 200 according to an embodiment of the present application.

如图2所示,仿真系统200可以包括仿真工具202以及与仿真工具202连接的主机100。As shown in FIG. 2 , the simulation system 200 may include a simulation tool 202 and a host 100 connected to the simulation tool 202 .

仿真工具202是一种用于仿真待测设计(DUT)的硬件系统。仿真工具202可以是原型验证板或者硬件仿真器(emulator)。一个待测设计可以包括多个模块。待测设计可以是组合逻辑电路、时序逻辑电路、或上述两者的组合。仿真工具202可以包括一个或多个可配置电路(例如,FPGA),用于仿真待测设计。Simulation tool 202 is a hardware system used to simulate a design under test (DUT). The simulation tool 202 may be a prototype verification board or a hardware emulator (emulator). A design under test can include multiple modules. The design under test can be a combinational logic circuit, a sequential logic circuit, or a combination of both. Simulation tool 202 may include one or more configurable circuits (eg, FPGA) for simulating the design under test.

仿真工具202可以包括接口单元2022,用于与主机100通信地耦接,以进行主机100和仿真工具202之间的通信。在一些实施例中,接口单元2022可以包括具有电连接能力的一个或多个接口。例如,接口单元2022可以包括RS232接口、USB接口、LAN口、光纤接口、IEEE1394(火线接口)等。在一些实施例中,接口单元2022可以是无线网络接口。例如,接口单元2022可以是WIFI接口、蓝牙接口等。The simulation tool 202 may include an interface unit 2022 for communicatively coupling with the host 100 for communication between the host 100 and the simulation tool 202 . In some embodiments, interface unit 2022 may include one or more interfaces with electrical connection capabilities. For example, the interface unit 2022 may include an RS232 interface, a USB interface, a LAN port, an optical fiber interface, IEEE1394 (FireWire interface), etc. In some embodiments, interface unit 2022 may be a wireless network interface. For example, the interface unit 2022 may be a WIFI interface, a Bluetooth interface, etc.

主机100可以经由接口单元2022向仿真工具202传输编译后的DUT、调试指令等。仿真工具202也可以经由接口单元2022向主机100传输仿真数据等。The host 100 may transmit the compiled DUT, debugging instructions, etc. to the simulation tool 202 via the interface unit 2022. The simulation tool 202 can also transmit simulation data to the host 100 via the interface unit 2022.

仿真工具202还可以包括存储器2024,用于存储在仿真过程中待测设计产生的仿真数据(例如,各种信号值)。在一些实施例中,仿真过程中待测设计产生的信号值可以直接被主机100读取。可以理解的是,存储器2024也可以独立仿真工具202,例如,使用一种外接存储器。The simulation tool 202 may also include a memory 2024 for storing simulation data (eg, various signal values) generated by the design under test during the simulation process. In some embodiments, signal values generated by the design under test during the simulation process can be directly read by the host 100 . It can be understood that the memory 2024 can also be independent of the simulation tool 202, for example, using an external memory.

仿真工具202还可以包括FPGA 2026,用于将逻辑系统设计硬件地实现到FPGA上。可以理解的是,仿真工具202可以包括多个FPGA,图中仅为示例。The simulation tool 202 may also include an FPGA 2026 for hardware implementation of the logic system design onto the FPGA. It can be understood that the simulation tool 202 may include multiple FPGAs, and the figure is only an example.

除了连接到主机100,仿真工具202还可以经由接口单元2022连接到一个或多个子卡204。In addition to connecting to the host 100, the emulation tool 202 may also be connected to one or more daughter cards 204 via the interface unit 2022.

子卡用于在使用仿真工具202进行原型验证时向DUT提供外设以构成完整的电子系统。原型验证是指在芯片流片之前,尽可能的还原芯片真实使用场景,验证芯片功能是否准确和完整的一种验证方式。子卡204可以包括存储器子卡(例如,提供DDR内存接口)、通信子卡(例如,提供多种网络接口或无线网卡接口)等。The daughter card is used to provide peripherals to the DUT to form a complete electronic system when using the simulation tool 202 for prototype verification. Prototype verification refers to a verification method that restores the actual usage scenario of the chip as much as possible before chip tape-out and verifies whether the chip function is accurate and complete. The daughter card 204 may include a memory daughter card (for example, providing a DDR memory interface), a communication daughter card (for example, providing a variety of network interfaces or wireless network card interfaces), etc.

主机100可以用于配置仿真工具202以仿真一个待测设计。该待测设计可以是一个完整的逻辑系统设计或一个完整逻辑系统设计的一个或多个模块。在一些实施例中,主机100可以是云计算系统中的一个虚拟主机。逻辑系统设计(例如,ASIC或者System-On-Chip)可以由硬件描述语言(例如Verilog、VHDL、System C、或System Verilog)设计。The host 100 can be used to configure the simulation tool 202 to simulate a design under test. The design under test may be a complete logic system design or one or more modules of a complete logic system design. In some embodiments, the host 100 may be a virtual host in a cloud computing system. Logical system designs (eg, ASIC or System-On-Chip) can be designed by hardware description languages (eg, Verilog, VHDL, System C, or System Verilog).

主机100可以运行调试软件,并且从用户接收调试待测设计的请求。如上所述,待测设计可以包括一个或多个模块。待测设计的描述可以用硬件描述语言来完成。主机100可以基于待测设计的描述来进行综合,以生成,例如,待测设计的门级电路网表(未示出)。待测设计的该门级电路网表可以被载入仿真工具202中运行,进而可以在仿真工具202中形成与待测设计相对应的电路结构。因此,待测设计的电路结构可以根据该描述而获得,并且相应地,待测设计中的每个块的电路结构也可以类似地获得。Host 100 can run debugging software and receive requests from users to debug designs under test. As mentioned above, a design under test may include one or more modules. The description of the design under test can be done using a hardware description language. Host 100 may perform synthesis based on the description of the design under test to generate, for example, a gate-level circuit netlist (not shown) of the design under test. The gate-level circuit netlist of the design under test can be loaded into the simulation tool 202 and run, and then a circuit structure corresponding to the design under test can be formed in the simulation tool 202 . Therefore, the circuit structure of the design under test can be obtained according to this description, and accordingly, the circuit structure of each block in the design under test can also be obtained similarly.

图3示出了根据本申请实施例的调试工具300的结构示意图。Figure 3 shows a schematic structural diagram of a debugging tool 300 according to an embodiment of the present application.

调试工具300可以包括多个模块,诸如标识符识别单元302、日志消息获取单元304以及日志消息分析单元306。The debugging tool 300 may include a plurality of modules, such as an identifier identification unit 302, a log message acquisition unit 304, and a log message analysis unit 306.

标识符识别单元302可以用于识别脚本中的标识符,以确定需要单独分析的目标脚本命令。The identifier identification unit 302 may be used to identify identifiers in scripts to determine target script commands that require separate analysis.

日志消息获取单元304可以获取执行目标脚本命令所产生的日志消息。The log message obtaining unit 304 may obtain log messages generated by executing the target script command.

日志消息分析单元306可以分析该日志消息并且生成分析结果。The log message analysis unit 306 can analyze the log message and generate analysis results.

可以理解的是,调试工具300还包括脚本命令的执行单元303,用于执行脚本命令。It can be understood that the debugging tool 300 also includes a script command execution unit 303 for executing the script command.

以下以一个具体的示例来说明。A specific example is given below.

一个示例性的原始脚本如下所示。An example original script is shown below.

designLoad xxxdesignLoad xxx

emulatorSpec yyyemulatorSpec yyy

createClock -sigName clk1 zzzcreateClock -sigName clk1 zzz

report_something > target/result1.rptreport_something > target/result1.rpt

上述示例性脚本共包括4条脚本命令,分别完成载入逻辑系统设计xxx,根据yyy文件配置硬件仿真器,创建clk1的时钟,并且将报告写入result1.rpt。The above exemplary script includes a total of 4 script commands, which respectively complete loading the logical system design xxx, configure the hardware emulator according to the yyy file, create the clock of clk1, and write the report to result1.rpt.

由于每个脚本命令在执行时都会产生日志消息,所以用户无法在日志中直接分析脚本的运行结果。Since each script command generates log messages when executed, users cannot directly analyze the running results of the script in the log.

因此,本申请实施例提供了一种调试工具300。该调试工具300可以支持识别特定关键字符,并且根据关键字符确定目标脚本命令,并且提取该目标脚本命令的日志消息进行后续分析。Therefore, the embodiment of the present application provides a debugging tool 300. The debugging tool 300 can support identifying specific key characters, determine a target script command based on the key characters, and extract log messages of the target script command for subsequent analysis.

本申请实施例允许对单个脚本命令添加标识符,并且对被标识的脚本命令所产生的日志消息进行单独分析。Embodiments of the present application allow an identifier to be added to a single script command, and log messages generated by the identified script command to be individually analyzed.

添加标识符的示例性脚本如下所示。An example script to add an identifier is shown below.

designLoad xxxdesignLoad xxx

emulatorSpec yyyemulatorSpec yyy

#PV1:#PV1:

createClock -sigName clk1 zzzcreateClock -sigName clk1 zzz

#PV1:basic_check#PV1:basic_check

report_something > target/result1.rptreport_something > target/result1.rpt

在上述示例性脚本中,增加了标识符“#PV1:”和“#PV1:basic_check”。上述标识符将脚本命令 “createClock -sigName clk1 zzz”标识为目标脚本命令,即,要单独分析其执行结果的日志消息的脚本命令。In the above example script, the identifiers "#PV1:" and "#PV1:basic_check" are added. The above identifier identifies the script command "createClock -sigName clk1 zzz" as the target script command, that is, the script command whose execution results log messages are to be analyzed separately.

相应地,调试工具300可以根据标识符确定需要单独分析的目标脚本命令。可以理解的是,标识符可以采用其他形式而不限于上述示例。例如,可以使用$符号或其他符号,也可以在目标脚本命令前加上“_”、“-”或者“+”等符号来进行标识。Accordingly, the debugging tool 300 can determine the target script command that needs to be analyzed separately based on the identifier. It is understood that the identifier may take other forms and is not limited to the above example. For example, you can use the $ symbol or other symbols, or you can add "_", "-" or "+" symbols before the target script command to identify it.

在一些实施例中,调试工具300还包括命令转换单元305,用于将标识符转换可以可执行的脚本代码。In some embodiments, the debugging tool 300 further includes a command conversion unit 305 for converting the identifier into executable script code.

在脚本语言中,通常#是注释的意思,也就是该行命令不会被执行。在调试工具300中,为了在兼容现有脚本编译器的情况下实现新的功能,可以由命令转换单元305将具有标识符的命令转换为脚本编译器可以编译和执行的脚本命令。In scripting languages, # usually means a comment, that is, the command in this line will not be executed. In the debugging tool 300, in order to implement new functions while being compatible with existing script compilers, the command conversion unit 305 can convert commands with identifiers into script commands that can be compiled and executed by the script compiler.

例如,“#PV1: ”和“#PV1:basic_check”可以被转换为“puts {#PV1:}”和“puts {#PV1:basic_check}”,从而可以在显示器上显示出上述标识符。可以理解的是,对于标识符的处理并不影响本申请实施例的调试工具300的运行,因此是一个可选功能。For example, "#PV1: " and "#PV1:basic_check" can be converted to "puts {#PV1:}" and "puts {#PV1:basic_check}", so that the above identifiers can be displayed on the display. It can be understood that the processing of identifiers does not affect the operation of the debugging tool 300 in the embodiment of the present application, and therefore is an optional function.

在运行脚本时,由于目标脚本命令“createClock -sigName clk1 zzz”已经被标识符标记,所以调试工具300在执行完目标脚本命令后可以由日志消息获取单元304获取执行该目标脚本命令产生的日志消息。例如,在执行“createClock -sigName clk1 zzz”返回的日志消息是“[ERROR]VCOM-888 invalid signal name clk1: cannot find fromnetlist!”When running the script, since the target script command "createClock -sigName clk1 zzz" has been marked by the identifier, the debugging tool 300 can obtain the log message generated by executing the target script command through the log message acquisition unit 304 after executing the target script command. . For example, the log message returned when executing "createClock -sigName clk1 zzz" is "[ERROR]VCOM-888 invalid signal name clk1: cannot find fromnetlist!"

标识符还可以具有特定分析功能。Identifiers can also have specific analytical functions.

调试工具300的日志消息分析单元306可以根据标识符指定的分析功能来分析返回的日志消息,并且生成分析结果。例如,#PV1:basic_check指示分析功能为简单判定目标脚本命令是否执行成功。那么,根据上述返回的日志消息,经过分析后可以生成“FAILED”的结果并且返回到用户。在一些实施例中,分析结果(例如,“FAILED”)可以保存到数据库中;在另一些实施例中,分析结果可以直接显示到显示器上。The log message analysis unit 306 of the debugging tool 300 may analyze the returned log message according to the analysis function specified by the identifier, and generate an analysis result. For example, #PV1:basic_check indicates that the analysis function is to simply determine whether the target script command is executed successfully. Then, based on the log message returned above, a "FAILED" result can be generated and returned to the user after analysis. In some embodiments, the analysis results (eg, "FAILED") can be saved to a database; in other embodiments, the analysis results can be displayed directly on the display.

在一些实施例中,标识符包括第一标识符和第二标识符。第一标识符用于确定要分析的脚本命令的范围的起点,第二标识符用于确定要分析的脚本命令的范围的终点。也就是说,可以使用第一标识符和第二标识符来分析多个脚本命令。In some embodiments, the identifier includes a first identifier and a second identifier. The first identifier is used to determine the beginning of the range of script commands to be analyzed, and the second identifier is used to determine the end of the range of script commands to be analyzed. That is, multiple script commands can be parsed using the first identifier and the second identifier.

同时,第二标识符还可以包括要对日志消息进行的分析功能的描述。At the same time, the second identifier may also include a description of the analysis function to be performed on the log message.

例如,上述#PV1:basic_check命令就指示对日志消息进行“basic check”分析,即,简单分析,返回成功或者失败。For example, the above #PV1:basic_check command instructs to perform "basic check" analysis on the log message, that is, simple analysis, and returns success or failure.

又例如,给出如下示例性脚本命令As another example, given the following exemplary script command

#PV0:#PV0:

design_read -netlist dut_top.vmdesign_read -netlist dut_top.vm

#PV0: diff<vcom.log> vcom.ref#PV0: diff<vcom.log> vcom.ref

“design_read -netlist dut_top.vm”是被标识符确定的脚本命令。dut_top.vm是逻辑系统设计的网表。“#PV0: file_diff<vcom.log> vcom.ref”则指示标识符的分析功能是比较vcom.log和vcom.ref以确定两个文件是否相同。如果相同,则满足分析功能并且返回成功;如果不相同,则返回失败。"design_read -netlist dut_top.vm" is the script command identified by the identifier. dut_top.vm is the netlist of the logical system design. "#PV0: file_diff<vcom.log> vcom.ref" indicates that the analysis function of the identifier is to compare vcom.log and vcom.ref to determine whether the two files are the same. If they are the same, the analysis function is satisfied and success is returned; if they are not the same, failure is returned.

又例如,给出如下示例性脚本命令As another example, given the following exemplary script command

designLoad xxxdesignLoad xxx

emulatorSpec yyyemulatorSpec yyy

#PV1:#PV1:

createClock -sigName clk1 zzzcreateClock -sigName clk1 zzz

report_something > target/result1.rptreport_something > target/result1.rpt

#PV1: assert_string “successfully connected”#PV1: assert_string “successfully connected”

这样,目标脚本命令就包括“createClock -sigName clk1 zzz”和“report_something > target/result1.rpt”。同时,第二标识符则使用“assert_string”命令指示分析功能是需要找到在屏幕上显示的日志消息中是否存在“successfully connected”。如果存在,则满足分析功能并且返回成功;如果不存在,则返回失败。Thus, the target script commands include "createClock -sigName clk1 zzz" and "report_something > target/result1.rpt". At the same time, the second identifier uses the "assert_string" command to indicate that the analysis function needs to find whether "successfully connected" exists in the log message displayed on the screen. If it exists, the analysis function is satisfied and success is returned; if it does not exist, failure is returned.

类似地,还可以有如下示例性脚本命令。Similarly, the following example script commands are also available.

designLoad xxxdesignLoad xxx

emulatorSpec yyyemulatorSpec yyy

#PV2:#PV2:

createClock -sigName clk1 zzzcreateClock -sigName clk1 zzz

report_something > target/result1.rptreport_something > target/result1.rpt

#PV2: count_string “successfully” == 10#PV2: count_string “successfully” == 10

第二标识符则使用“count_string”命令指示该分析功能是需要找到产生的日志消息中是否存在10个“successfully”字符。如果存在,则判断满足该分析功能并返回成功;如果不存在,则判断不满足该分析功能并返回失败。The second identifier uses the "count_string" command to indicate that the analysis function needs to find whether there are 10 "successfully" characters in the generated log message. If it exists, it is judged that the analysis function is satisfied and success is returned; if it does not exist, it is judged that the analysis function is not satisfied and failure is returned.

再例如,给出如下示例性脚本命令。As another example, the following exemplary script command is given.

emulatorSpec yyyemulatorSpec yyy

#PV3:#PV3:

design_read -netlist dut_top.vmdesign_read -netlist dut_top.vm

#PV3: assert_reg_exp “LUT: (\d+) BRAM: (\d+)” “\1 > \2 + 10”#PV3: assert_reg_exp “LUT: (\d+) BRAM: (\d+)” “\1 > \2 + 10”

第二标识符使用“assert_reg_exp”命令指示该分析功能是在指定日志消息中对LUT 的数量和 BRAM 的数量进行分析。在满足上述表达式(LUT 的数量>BRAM 的数量+10)的情况下,则判断满足该分析功能并返回成功;否则返回失败。The second identifier uses the "assert_reg_exp" command to indicate that the analysis function is to analyze the number of LUTs and the number of BRAMs in the specified log message. When the above expression is satisfied (the number of LUTs > the number of BRAMs + 10), it is judged that the analysis function is satisfied and success is returned; otherwise, failure is returned.

再例如,给出如下示例性脚本命令。As another example, the following exemplary script command is given.

#PV4:#PV4:

echo "ABC" # 该命令会在屏幕上打印 ABCecho "ABC" # This command will print ABC on the screen

echo "DEF" > file1 # 该命令会在文件file1中打印DEFecho "DEF" > file1 # This command will print DEF in file file1

#PV4:assert_string ABC#PV4:assert_string ABC

#PV4:assert_string DEF#PV4:assert_string DEF

#PV4:assert_string<file1> ABC#PV4:assert_string<file1> ABC

#PV4:assert_string<file1> DEF#PV4:assert_string<file1> DEF

在以上示例性代码中,由第一标识符“#PV4:”和多个第二标识符“#PV4:assert_string”将目标脚本命令选定为“echo "ABC"”以及“echo "DEF" >file1”。同时,根据第二标识符确定的分析功能分别为在屏幕上查找ABC字符串、在屏幕查找DEF字符串、在file1文件中查找ABC字符串、在file1文件中查找DEF字符串。由于屏幕上有字符串ABC且file1文件中有字符串DEF,那么执行结果将分别是成功、失败、失败和成功。In the above example code, the target script command is selected as "echo "ABC"" and "echo "DEF" > by the first identifier "#PV4:" and the plurality of second identifiers "#PV4:assert_string" file1". At the same time, the analysis functions determined according to the second identifier are respectively searching for the ABC string on the screen, searching for the DEF string on the screen, searching for the ABC string in the file1 file, and searching for the DEF string in the file1 file. Since there is the string ABC on the screen and the string DEF in the file1 file, the execution results will be success, failure, failure and success respectively.

可以理解的是,上述分析功能仅是示例性的,可以根据用户需要设置更多的分析功能。It can be understood that the above analysis functions are only exemplary, and more analysis functions can be set according to user needs.

通过使用标识符来标记目标脚本命令并且在标识符中指示要进行的具体分析功能,使得用户可以对执行指定的一个或多个脚本命令的日志消息进行分析,并且可以限定分析功能,从而极大便利化用户的调试工作。By using an identifier to mark the target script command and indicating the specific analysis function to be performed in the identifier, the user can analyze the log messages of the execution of one or more specified script commands and limit the analysis function, which greatly improves the efficiency of the analysis. Facilitate users’ debugging work.

本申请实施例还提供了一种处理脚本命令的方法。The embodiment of the present application also provides a method for processing script commands.

图4示出了根据本申请实施例的一种处理脚本命令的方法400的流程图。方法400可以由如图2所示的主机100执行。方法400可以包括如下步骤。Figure 4 shows a flow chart of a method 400 for processing script commands according to an embodiment of the present application. Method 400 may be performed by host 100 as shown in FIG. 2 . Method 400 may include the following steps.

在步骤401, 读取与逻辑系统设计(例如,上述示例中的“xxx”或者网表dut_top.vm)关联的脚本。所述脚本可以包括多个脚本命令。At step 401, the script associated with the logical system design (eg, "xxx" in the above example or the netlist dut_top.vm) is read. The script may include multiple script commands.

在步骤402, 获取所述脚本中包括的标识符(例如,上述示例中的#PV0、#PV1、#PV2等)。所述标识符包括第一标识符(例如,#PV0)和第二标识符(例如,#PV0: file_diff<vcom.log> vcom.ref)。第一标识符和第二标识符可以组成一对标识符。In step 402, the identifiers included in the script (eg, #PV0, #PV1, #PV2, etc. in the above example) are obtained. The identifier includes a first identifier (eg, #PV0) and a second identifier (eg, #PV0: file_diff<vcom.log> vcom.ref). The first identifier and the second identifier may form a pair of identifiers.

所述第一标识符用于确定所述一个或多个目标脚本命令的范围的起点,所述第二标识符用于确定所述一个或多个目标脚本命令的范围的终点。也就是说,在第一标识符和第二标识符之间的脚本命令就是要分析的目标脚本命令。所述第二标识符还包括要对日志消息进行的分析功能的描述。The first identifier is used to determine the starting point of the range of the one or more target script commands, and the second identifier is used to determine the end point of the range of the one or more target script commands. That is, the script command between the first identifier and the second identifier is the target script command to be analyzed. The second identifier also includes a description of the analysis function to be performed on the log message.

在一些实施例中,所述分析功能包括判断目标脚本命令执行是否成功(例如,#PV1:basic_check)、目标脚本命令的日志消息中的两个值的数学运行结果(例如,#PV3:assert_regex“LUT: (\d+) BRAM: (\d+)” “\1 > \2 + 10”)、执行目标脚本命令产生的两个文件的比较(例如,#PV0: file_diff<vcom.log> vcom.ref)、在目标脚本命令的日志消息(例如,指定文件(例如,file1)或者屏幕)中查找指定字符串(例如,#PV1: assert_string “successfully connected”以及#PV4:assert_string<file1> ABC)、或者确定在目标脚本命令的日志消息中指定字符串的数量(例如,#PV2: count_string“successfully” == 10)。In some embodiments, the analysis function includes determining whether the target script command is executed successfully (for example, #PV1:basic_check), the mathematical operation result of two values in the log message of the target script command (for example, #PV3:assert_regex" LUT: (\d+) BRAM: (\d+)” “\1 > \2 + 10”), comparison of two files generated by executing the target script command (for example, #PV0: file_diff<vcom.log> vcom.ref ), find the specified string (for example, #PV1: assert_string "successfully connected" and #PV4:assert_string<file1> ABC) in the target script command's log message (for example, the specified file (for example, file1) or the screen), or Determines the number of specified strings in the target script command's log message (for example, #PV2: count_string "successfully" == 10).

在步骤403, 根据所述标识符在所述多个脚本命令中确定要分析的一个或多个目标脚本命令(例如,createClock -sigName clk1 zzz和report_something > target/result1.rpt)。In step 403, one or more target script commands to be analyzed are determined among the plurality of script commands according to the identifier (for example, createClock -sigName clk1 zzz and report_something > target/result1.rpt).

在一些实施例中,方法400还包括:将所述标识符转换为可执行脚本命令(例如,“puts {#PV1:}”)。In some embodiments, method 400 further includes converting the identifier into an executable script command (eg, "puts {#PV1:}").

在步骤404, 运行所述脚本以获取与所述一个或多个目标脚本命令对应的日志消息(例如,“[ERROR]VCOM-888 invalid signal name clk1: cannot find fromnetlist!”)。At step 404, the script is run to obtain log messages corresponding to the one or more target script commands (eg, "[ERROR]VCOM-888 invalid signal name clk1: cannot find fromnetlist!").

在步骤405, 根据所述标识符分析所述日志消息。更具体地,根据第二标识符确定的分析功能判断所述日志消息的内容是否满足分析功能。如果满足该分析功能,则返回成功;如果不满足该分析功能,则返回失败。At step 405, the log message is analyzed based on the identifier. More specifically, it is determined according to the analysis function determined by the second identifier whether the content of the log message satisfies the analysis function. If the analysis function is met, success is returned; if the analysis function is not met, failure is returned.

通过使用标识符来标记目标脚本命令并且在标识符中指示要进行的具体分析功能,使得用户可以对执行指定的一个或多个脚本命令的日志消息进行分析,并且可以限定分析功能,从而极大便利化用户的调试工作。By using an identifier to mark the target script command and indicating the specific analysis function to be performed in the identifier, the user can analyze the log messages of the execution of one or more specified script commands and limit the analysis function, which greatly improves the efficiency of the analysis. Facilitate users’ debugging work.

本申请实施例还提供一种电子设备。该电子设备可以是图1的主机100。该主机100可以包括存储器,用于存储一组指令;以及至少一个处理器,配置为执行该组指令以使得所述电子装置执行方法400。An embodiment of the present application also provides an electronic device. The electronic device may be the host 100 of FIG. 1 . The host 100 may include a memory for storing a set of instructions; and at least one processor configured to execute the set of instructions to cause the electronic device to perform the method 400 .

本申请实施例还提供一种非暂态计算机可读存储介质。该非暂态计算机可读存储介质存储计算机的一组指令,该组指令用于在被执行时使该计算机装置执行方法400。An embodiment of the present application also provides a non-transitory computer-readable storage medium. The non-transitory computer-readable storage medium stores a set of instructions for a computer that, when executed, cause the computer device to perform method 400.

上述对本申请的一些实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。 在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。The above describes some embodiments of the present application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desired results. Additionally, the processes depicted in the figures do not necessarily require the specific order shown, or sequential order, to achieve desirable results. Multitasking and parallel processing are also possible or may be advantageous in certain implementations.

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请的不同方面的许多其它变化,为了简明它们没有在细节中提供。Those of ordinary skill in the art should understand that the discussion of any above embodiments is only illustrative, and is not intended to imply that the scope of the present application (including the claims) is limited to these examples; under the spirit of the present application, the above embodiments or Combinations between technical features in different embodiments are also possible, the steps can be implemented in any order, and there are many other variations of the different aspects of the application as described above, which are not provided in detail for the sake of brevity.

尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。Although the present application has been described in conjunction with specific embodiments thereof, many alternatives, modifications and variations of these embodiments will be apparent to those of ordinary skill in the art from the foregoing description. For example, other memory architectures (eg, dynamic RAM (DRAM)) may use the discussed embodiments.

本申请旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。This application is intended to cover all such alternatives, modifications and variations that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of this application shall be included in the protection scope of this application.

Claims (7)

1. A method of processing script commands, comprising:
reading a script associated with a logical system design, the script comprising a plurality of script commands;
acquiring an identifier included in the script;
determining one or more target script commands to be analyzed from among the plurality of script commands according to the identifier;
running the script to obtain log messages corresponding to the one or more target script commands; and
and analyzing the log message according to the identifier.
2. The method of claim 1, wherein the identifiers comprise a first identifier for determining a start of a range of the one or more target script commands and one or more second identifiers for determining an end of the range of the one or more target script commands.
3. The method of claim 2, wherein the second identifier further comprises a description of an analysis function to be performed on the log message.
4. The method of claim 1, further comprising: the identifier is converted into an executable script command.
5. The method of claim 3, wherein the analysis function includes determining whether the one or more target script commands were executed successfully, a mathematical run result of two values in a log message of the one or more target script commands, a comparison of two files generated by executing the one or more target script commands, looking up a specified string in a log message of the one or more target script commands, or determining a number of specified strings in a log message of the one or more target script commands.
6. An electronic device, comprising:
a memory for storing a set of instructions; and
at least one processor configured to execute the set of instructions to cause the electronic device to perform the method of any one of claims 1-5.
7. A non-transitory computer readable storage medium storing a set of instructions of a computer for causing the computer to perform the method of any one of claims 1-5 when executed.
CN202311153895.8A 2023-09-07 2023-09-07 Method for processing script commands, electronic device and storage medium Active CN117172203B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311153895.8A CN117172203B (en) 2023-09-07 2023-09-07 Method for processing script commands, electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311153895.8A CN117172203B (en) 2023-09-07 2023-09-07 Method for processing script commands, electronic device and storage medium

Publications (2)

Publication Number Publication Date
CN117172203A true CN117172203A (en) 2023-12-05
CN117172203B CN117172203B (en) 2025-01-28

Family

ID=88935130

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311153895.8A Active CN117172203B (en) 2023-09-07 2023-09-07 Method for processing script commands, electronic device and storage medium

Country Status (1)

Country Link
CN (1) CN117172203B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104536797A (en) * 2015-01-14 2015-04-22 大唐微电子技术有限公司 Java program precompiling method and precompiler
US20180113783A1 (en) * 2016-10-24 2018-04-26 Yu Luo Log processing and analysis
CN109041051A (en) * 2018-06-27 2018-12-18 深圳市共进电子股份有限公司 Test method, system and computer equipment based on WPA encryption
CN112433876A (en) * 2020-11-23 2021-03-02 中国建设银行股份有限公司 Method and device for processing job error information and storage medium
CN112732563A (en) * 2020-12-31 2021-04-30 深圳赛安特技术服务有限公司 Interface script test log extraction method and device, terminal and storage medium
CN113050953A (en) * 2021-04-21 2021-06-29 平安普惠企业管理有限公司 Method, device and storage medium for generating code based on annotation
CN113391942A (en) * 2021-06-18 2021-09-14 华云数据控股集团有限公司 Shell script log printing method and device, electronic equipment and storage medium
CN115374077A (en) * 2022-09-15 2022-11-22 长城汽车股份有限公司 Request log storage method and device, terminal equipment and readable storage medium
CN115470125A (en) * 2022-09-02 2022-12-13 芯华章科技(北京)有限公司 Debugging method and device based on log file and storage medium
CN115857890A (en) * 2022-11-11 2023-03-28 芯华章科技(北京)有限公司 Method, apparatus and storage medium for generating script command
CN115951868A (en) * 2022-11-11 2023-04-11 芯华章科技(北京)有限公司 Method, apparatus and storage medium for executing script command

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104536797A (en) * 2015-01-14 2015-04-22 大唐微电子技术有限公司 Java program precompiling method and precompiler
US20180113783A1 (en) * 2016-10-24 2018-04-26 Yu Luo Log processing and analysis
CN109041051A (en) * 2018-06-27 2018-12-18 深圳市共进电子股份有限公司 Test method, system and computer equipment based on WPA encryption
CN112433876A (en) * 2020-11-23 2021-03-02 中国建设银行股份有限公司 Method and device for processing job error information and storage medium
CN112732563A (en) * 2020-12-31 2021-04-30 深圳赛安特技术服务有限公司 Interface script test log extraction method and device, terminal and storage medium
CN113050953A (en) * 2021-04-21 2021-06-29 平安普惠企业管理有限公司 Method, device and storage medium for generating code based on annotation
CN113391942A (en) * 2021-06-18 2021-09-14 华云数据控股集团有限公司 Shell script log printing method and device, electronic equipment and storage medium
CN115470125A (en) * 2022-09-02 2022-12-13 芯华章科技(北京)有限公司 Debugging method and device based on log file and storage medium
CN115374077A (en) * 2022-09-15 2022-11-22 长城汽车股份有限公司 Request log storage method and device, terminal equipment and readable storage medium
CN115857890A (en) * 2022-11-11 2023-03-28 芯华章科技(北京)有限公司 Method, apparatus and storage medium for generating script command
CN115951868A (en) * 2022-11-11 2023-04-11 芯华章科技(北京)有限公司 Method, apparatus and storage medium for executing script command

Also Published As

Publication number Publication date
CN117172203B (en) 2025-01-28

Similar Documents

Publication Publication Date Title
TWI837026B (en) Verification system, verification method, electronic device and storage medium
US9460261B2 (en) Computer-implemented verification system for performing a functional verification of an integrated circuit
CN105468797A (en) Information processing method and apparatus
CN114327476A (en) Chip design file generation method and device and chip design method and device
CN115657981A (en) Method for setting print level of print information in authentication environment and authentication method
CN115684895A (en) Chip testability design test method, test platform, and generation method and device thereof
CN114912397A (en) Programmable logic device, prototype verification system, method, apparatus and storage medium
CN115470125A (en) Debugging method and device based on log file and storage medium
CN117910398B (en) Method, electronic device and storage medium for designing simulation logic system
CN114548027A (en) Method for tracking signal in verification system, electronic device and storage medium
CN117236272A (en) Chip simulation verification method and device, equipment and storage medium
CN117172203A (en) Methods, electronic devices and storage media for processing script commands
CN221746452U (en) Hardware emulation tools and interface adapters
CN118504478B (en) Method, electronic device and storage medium for designing simulation logic system
CN117454835B (en) Method for storing and reading waveform data, electronic device and storage medium
CN114169287B (en) Method for generating connection schematic diagram of verification environment, electronic equipment and storage medium
US20240241809A1 (en) Methods, electronic devices and storage media for executing assertions
CN117332733B (en) A method, device and storage medium for locating errors in logic system design
CN118915562A (en) Method, device, electronic apparatus and storage medium for processing signals designed for logic system
CN118643771A (en) Method, electronic device and storage medium for debugging logic system design
CN119167841A (en) Simulation logic system design method, electronic device and storage medium
CN117933151A (en) Method for simulating logic system design, electronic device and storage medium
CN119167842A (en) Method and related device for analyzing timing of logic system design
CN119088365A (en) A performance simulation model construction method, device and performance simulation method
CN115292760A (en) Chip verification system, method and computer readable storage medium

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