Non-intra-macro identifier processing method in macro reference row, electronic equipment and medium

By acquiring and binding the location information of non-macro identifiers in macro reference lines, the problem of existing tools being unable to identify and debug non-macro identifiers is solved, achieving accurate and fast binding and debugging of non-macro identifiers, and improving the debugging efficiency of chip design code.

CN121300758AActive Publication Date: 2026-01-09BEIJING NORI INTEGRATED CIRCUIT DESIGN CO LTD +2

Patent Information

Application Number
CN202511613512.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-06
Publication Date
2026-01-09
Estimated Expiration
2045-11-06

AI Technical Summary

Technical Problem

Existing electronic design automation tools cannot support the syntax parsing and recognition of non-macro identifiers within macro reference lines, which makes it impossible to meet the debugging requirements of non-macro identifiers in the expanded macro text.

Method used

By obtaining the storage information of the macro reference line, the location and binding object of the non-macro identifier are determined, and the non-macro identifier location information is added to the macro identifier list, thereby realizing the binding and debugging operations of the non-macro identifier.

Benefits of technology

It enables accurate and rapid binding and debugging of non-macro identifiers after macro reference line expansion, improving the debugging efficiency of chip design code.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121300758A_ABST
    Figure CN121300758A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of macro text processing, in particular to a non-macro identifier processing method in a macro reference row, electronic equipment and a medium, the method comprises the following steps: S1, obtaining storage information corresponding to each macro reference of the macro reference row, the storage information corresponding to the macro reference comprises a macro reference identifier, a line number in a macro expanded text of a macro reference line and an intra-macro identifier list corresponding to the line number in the macro expanded text of the macro reference line; step S2, obtaining non-intra-macro identifier positioning information and a corresponding to-be-added macro reference identifier in a macro expanded text of the macro reference line; and S3, adding the non-intra-macro identifier positioning information to an intra-macro identifier list corresponding to the corresponding to-be-added macro reference identifier. According to the method, the non-intra-macro identifier binding object after row expansion can be accurately and quickly referenced for the macro, and a debugging function is realized based on the binding object.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of macro text processing, and in particular to a macro reference line non-macro internal identifier processing method, an electronic device and a medium. BACKGROUND

[0002] In chip design code, in order to facilitate text replacement of the code, a large number of macro texts are usually used to participate in design programming. The macro reference line includes macro references and non-macro internal identifiers, and the macro text content is various. The identifier specifically includes signals, parameters, models, functions, tasks and instances. In the macro text expansion process of the macro reference line, the non-macro internal identifier may be incorrect, and the existing electronic design automation (Electronic Design Automation, referred to as EDA) tool usually only supports the conventional expansion of the macro text in the chip design code file, and does not support the functions of syntax analysis, identifier identification and binding of the expanded text. Thus, the debugging requirement of the non-macro internal identifier of the expanded macro text cannot be met. Therefore, how to accurately and quickly realize the debugging function based on the expanded non-macro internal identifier becomes a technical problem to be solved. SUMMARY

[0003] The present application aims to provide a macro reference line non-macro internal identifier processing method, an electronic device and a medium, which can accurately and quickly bind objects for the non-macro internal identifier of the expanded macro reference line, and realize the debugging function based on the bound objects.

[0004] According to the first aspect of the present application, a macro reference line non-macro internal identifier processing method is provided, comprising: Step S1, obtaining the storage information corresponding to each macro reference of the macro reference line, Wherein, the storage information corresponding to the macro reference includes the macro reference identifier, the line number in the macro expansion text of the macro reference line and the macro internal identifier list corresponding to the line number in the macro expansion text of the macro reference line, the macro internal identifier list includes at least one macro internal identifier positioning information, the macro internal identifier positioning information includes the binding object, the position information of the macro internal identifier corresponding to the macro reference in the original file of the chip design code and the position information of the macro internal identifier in the macro expansion text of the macro reference line, and the binding object is an object that can be identified and supports execution of the debugging operation; Step S2, obtaining the non-macro internal identifier positioning information in the macro expansion text of the macro reference line and the corresponding macro reference identifier to be added, The non-macro-in-identifier positioning information includes a binding object, position information of the non-macro-in-identifier in a chip design code original file, and position information of the non-macro-in-identifier in a macro expansion text of the macro reference line, a starting column number of a non-macro-in-identifier smaller than a first macro reference starting column number in the macro reference line corresponds to a first macro reference identifier to be added, a starting column number of a non-macro-in-identifier greater than an (i-1)th macro reference ending column number and smaller than an ith macro reference starting column number corresponds to an ith macro reference identifier to be added, a starting column number of a non-macro-in-identifier greater than an Ith macro reference right starting column number corresponds to an Ith macro reference identifier to be added, i is an integer in a range of 2 to I, and I is a total number of macro references of the macro reference line; Step S3: adding the non-macro-in-identifier positioning information to a macro-in-identifier list corresponding to the macro reference identifier to be added.

[0005] Further, the method further includes: Step S4: finding storage information corresponding to the macro reference based on positions of the non-macro-in-identifier in the macro expansion text of the macro reference line, and determining a binding object corresponding to the non-macro-in-identifier. Step S5: performing a debugging operation on the non-macro-in-identifier in the macro expansion text of the macro reference line based on the binding object corresponding to the non-macro-in-identifier.

[0006] Further, the step S2 includes: Step S21: sequentially obtaining identifiers in the macro reference line from a starting column to an ending column of the macro reference line to construct an identifier list, and sequentially obtaining macro references to construct a macro reference list; Step S22: setting a first pointer to point to a first identifier in the identifier list of the macro reference line, and setting a second pointer to point to a first macro reference in the macro reference list; Step S23: if a starting column number of the identifier currently pointed to by the first pointer is smaller than a starting column number of the macro reference currently pointed to by the second pointer, performing step S27, otherwise, performing step S24; Step S24: if an ending column number of the identifier currently pointed to by the first pointer is smaller than an ending column number of the macro reference currently pointed to by the second pointer, performing step S25, otherwise, performing step S26; Step S25: if the first pointer currently does not point to a last identifier in the identifier list of the macro reference line, updating the first pointer by 1, and returning to perform step S23, otherwise, ending step S2; Step S26: if the second pointer currently does not point to a last macro reference of the macro reference line, updating the second pointer by 1, and returning to perform step S23; In step S27, the positioning information of the identifier currently pointed by the first pointer is acquired, and the macro reference identifier currently pointed by the second pointer is determined as the macro reference identifier corresponding to the identifier currently pointed by the first pointer, and the execution returns to step S25.

[0007] Further, in step S27, the positioning information of the identifier currently pointed by the first pointer is acquired, including: In step S271, the binding object of the identifier currently pointed by the first pointer is set. In step S272, the line number and column number range of the identifier currently pointed by the first pointer in the chip design code original file are acquired and added to the location information of the identifier currently pointed by the first pointer in the chip design code original file. In step S273, the line number and column number range of the identifier currently pointed by the first pointer in the macro expansion text of the macro reference line are acquired and added to the location information of the identifier currently pointed by the first pointer in the macro expansion text of the macro reference line.

[0008] Further, step S272 further includes: acquiring the code region identifier corresponding to the identifier currently pointed by the first pointer in the chip design code original file, and adding the code region identifier to the location information of the identifier currently pointed by the first pointer in the chip design code original file.

[0009] Further, step S273 further includes: determining the macro reference identifier currently pointed by the second pointer as the macro reference identifier corresponding to the identifier currently pointed by the first pointer, and adding the macro reference identifier to the location information of the identifier currently pointed by the first pointer in the macro expansion text of the macro reference line.

[0010] Further, the macro-in identifier includes a signal, a parameter, a model, a function, a task and an instance.

[0011] Further, the non-macro-in identifier includes a signal, a parameter, a model, a function, a task and an instance.

[0012] According to the second aspect of the present application, an electronic device is provided, including: at least one processor; and a memory connected with the at least one processor in communication; wherein the memory stores instructions executed by the at least one processor, and the instructions are configured to execute the method according to the first aspect of the present application.

[0013] According to the third aspect of the present application, a computer readable storage medium is provided, which stores computer executable instructions, and the computer executable instructions are used to execute the method according to the first aspect of the present application.

[0014] Compared with existing technologies, this invention has significant advantages and beneficial effects. Through the above technical solution, the present invention provides a method, electronic device, and medium for processing inline non-macro identifiers in macro references, achieving considerable technological advancement and practicality, and possessing broad industrial application value. It has at least the following beneficial effects: This invention first creates storage information corresponding to each macro reference in a macro reference line. Then, it adds the macro identifier location information to the storage information corresponding to the macro reference. Based on the positional relationship between non-macro identifiers and macro references in the macro reference line, it adds the non-macro identifier location information to the macro identifier list corresponding to the macro reference identifier. This ensures that each non-macro identifier also contains the binding object and position information in the storage information corresponding to each macro reference. This allows for accurate and rapid binding of objects to non-macro identifiers after the macro reference line is expanded, and debugging functions are implemented based on the bound objects. Attached Figure Description

[0015] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0016] Figure 1 This is a flowchart illustrating the processing of inline non-macro identifiers for macro references provided in an embodiment of the present invention. Detailed Implementation

[0017] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0018] This invention provides a method for handling inline non-macro identifiers referenced in macros, such as... Figure 1 As shown, it includes: Step S1: Obtain the storage information corresponding to each macro reference in the macro reference line.

[0019] The storage information corresponding to the macro reference includes a macro reference identifier, a line number in the macro expanded text of the macro reference line, and a list of macro identifiers corresponding to the line number in the macro expanded text of the macro reference line. The list of macro identifiers includes at least one macro identifier location information. The macro identifier location information includes a binding object, the location information of the macro reference corresponding to the macro identifier in the chip design code original file, and the location information of the macro identifier in the macro expanded text of the macro reference line. The binding object is an object that can be identified and supports debugging operations.

[0020] It's important to note that the chip design code source file refers to the code file generated based on a hardware description language. Specific hardware description languages ​​can include Verilog, SystemVerilog, VHDL, etc. Macro identifiers refer to the identifiers contained within the macro expanded text. Macro identifiers can specifically be signals, parameters, models, functions, tasks, and instances, etc. It's understandable that macros with the same name can be used in different locations, corresponding to different macro references.

[0021] A macro reference identifier is a unique identifier that can identify a macro reference. Specifically, a macro virtual file can be created for each macro reference, and the macro reference identifier can be set as the macro virtual file identifier. The macro virtual file can include the macro virtual file identifier, the initial expanded text of the macro, the initial line number of the macro identifier, and the initial column number range of the macro identifier. The initial line number of the macro identifier is the line number of the macro identifier in the initial expanded text of the macro, and the initial column number range of the macro identifier is the column number range of the macro identifier in the initial expanded text of the macro.

[0022] A bound object refers to an object that can be identified and supports debugging operations. Debugging operations specifically include searching, annotation, tracing links, and definition jumps. Annotation operations can take the form of highlighting, selecting boxes, etc.

[0023] Step S2: Obtain the location information of non-macro identifiers in the macro expanded text of the macro reference line and the corresponding macro reference identifier to be added.

[0024] The non-macro identifier location information includes the binding object, the position information of the non-macro identifier in the original chip design code file, and the position information of the non-macro identifier in the macro expanded text of the macro reference line. The macro reference identifier to be added corresponding to the non-macro identifier whose starting column number is less than the starting column number of the first macro reference in the macro reference line is the first macro reference identifier. The macro reference identifier to be added corresponding to the non-macro identifier whose starting column number is greater than the ending column number of the (i-1)th macro reference and less than the starting column number of the i-th macro reference is the i-th macro reference identifier. The macro reference identifier to be added corresponding to the non-macro identifier whose starting column number is greater than the right starting column number of the i-th macro reference is the i-th macro reference identifier. i is any integer from 2 to i, and i is the total number of macro references in the macro reference line.

[0025] It should be noted that the macro reference identifier to be added refers to the macro reference identifier corresponding to the list of macro identifiers to which the non-macro identifier positioning information needs to be added. The correspondence between the non-macro identifier positioning information and the macro reference identifier to be added is determined based on the positional relationship between the non-macro identifier and the macro reference. Non-macro identifiers can specifically be signals, parameters, models, functions, tasks, and instances, etc.

[0026] Step S3: Add the non-macro identifier location information to the macro identifier list corresponding to the macro reference identifier to be added.

[0027] It should be noted that adding the location information of non-macro identifiers to the list of macro identifiers corresponding to the macro reference identifier to be added also adds the location information of non-macro identifiers to the storage information corresponding to the macro reference. This makes the storage information corresponding to the macro reference contain both macro identifier location information and non-macro identifier location information. Non-macro identifiers can also be used to implement debugging functions based on the storage information corresponding to the macro reference.

[0028] As one embodiment, the method further includes: Step S4: Based on the position of the non-macro identifier in the macro expanded text of the macro reference line, find the storage information corresponding to the macro reference in the macro reference line, and determine the binding object corresponding to the non-macro identifier.

[0029] It should be noted that since the storage information corresponding to the macro reference already stores the location information of the non-macro identifier, and the relationship between the location information of the non-macro identifier and the binding object is clear, the binding object corresponding to the non-macro identifier can be determined by the position of the non-macro identifier in the macro expansion text of the macro reference line.

[0030] Step S5: Perform debugging operations on non-macro identifiers in the macro expansion text of the macro reference line based on the binding object corresponding to the non-macro identifier.

[0031] It should be noted that, since the bound object is an object that can be recognized and supports debugging operations, once a non-macro identifier is bound to the corresponding bound object, debugging operations can be performed on the non-macro identifier in the macro expansion text of the macro reference line based on the bound object corresponding to the non-macro identifier.

[0032] It should be noted that in the prior art, the macro expansion text of the macro reference line is plain text information and cannot be used for debugging operations. In this embodiment of the invention, based on the position of the non-macro identifier in the macro expansion text of the macro reference line and the storage information corresponding to the macro reference, the binding object corresponding to the non-macro identifier can be accurately and quickly obtained. The non-macro identifier in the macro expansion text of the macro reference line is bound to the binding object, thereby enabling debugging operations such as annotation, searching, tracing link relationships, and definition jump.

[0033] As one embodiment, step S2 includes: Step S21: Starting from the first column of the macro reference row and ending from the last column, retrieve the identifiers in the macro reference row to construct an identifier list, and retrieve the macro references to construct a macro reference list.

[0034] Step S22: Set the first pointer to point to the first identifier in the identifier list of the macro reference line, and set the second pointer to point to the first macro reference in the macro reference list.

[0035] Step S23: If the starting column number of the identifier currently pointed to by the first pointer is less than the starting column number of the macro reference currently pointed to by the second pointer, then execute step S27; otherwise, execute step S24.

[0036] It should be noted that if the starting column number of the identifier currently pointed to by the first pointer is less than the starting column number of the macro reference currently pointed to by the second pointer, it means that all or part of the identifier currently pointed to by the first pointer is located to the left of the macro reference currently pointed to by the second pointer, and the identifier currently pointed to by the first pointer is a non-macro identifier.

[0037] Step S24: If the end column number of the identifier currently pointed to by the first pointer is less than the end column number of the macro reference currently pointed to by the second pointer, then execute step S25; otherwise, execute step S26.

[0038] It should be noted that if the starting column number of the identifier currently pointed to by the first pointer is greater than or equal to the starting column number of the macro reference currently pointed to by the second pointer, and the ending column number of the identifier currently pointed to by the first pointer is less than the ending column number of the macro reference currently pointed to by the second pointer, then the identifier currently pointed to by the first pointer is an identifier within the macro reference currently pointed to by the second pointer, and can be skipped directly.

[0039] Step S25: If the current first pointer does not point to the last identifier in the identifier list of the macro reference line, then update the first pointer by 1 and return to step S23; otherwise, end step S2.

[0040] Step S26: If the first pointer does not currently point to the last macro reference in the macro reference line, then update the second pointer by 1 and return to step S23.

[0041] Step S27: Obtain the location information of the identifier currently pointed to by the first pointer, and determine the macro reference identifier currently pointed to by the second pointer as the macro reference identifier to be added corresponding to the identifier currently pointed to by the first pointer, and return to execute step S25.

[0042] It should be noted that, through the processing of steps S21-S27, a corresponding macro reference identifier to be added is determined for each non-macro identifier in the macro reference row.

[0043] As one embodiment, in step S27, obtaining the location information of the identifier currently pointed to by the first pointer includes: Step S271: Set the binding object of the identifier currently pointed to by the first pointer.

[0044] Step S272: Obtain the line number and column number range of the identifier currently pointed to by the first pointer in the original chip design code file, and add them to the position information of the identifier currently pointed to by the first pointer in the original chip design code file.

[0045] Step S273: Obtain the row number and column number range of the identifier currently pointed to by the first pointer in the macro expanded text of the macro reference line, and add it to the position information of the identifier currently pointed to by the first pointer in the macro expanded text of the macro reference line.

[0046] As one embodiment, step S272 further includes: obtaining the code region identifier corresponding to the identifier currently pointed to by the first pointer in the original chip design code file, and adding it to the position information of the identifier currently pointed to by the first pointer in the original chip design code file.

[0047] It should be noted that the data structure of non-macro identifier location information and macro identifier location information is the same. That is, macro identifier location information is also included in the corresponding code region identifier in the chip design code source file.

[0048] As one embodiment, step S273 further includes: determining the macro reference identifier currently pointed to by the second pointer as the macro reference identifier corresponding to the identifier currently pointed to by the first pointer, and adding it to the position information of the identifier currently pointed to by the first pointer in the macro expansion text of the macro reference line. The chip design code source file can be divided into multiple code regions, and the storage information corresponding to macro references can be stored in separate code regions, which facilitates storage and subsequent retrieval, and further improves the processing efficiency of non-macro identifiers.

[0049] It should be noted that the data structure of non-macro identifier location information and macro identifier location information is the same. That is, macro identifier location information is also included in the corresponding macro reference identifier in the chip design code source file.

[0050] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used herein in the description of this invention is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.

[0051] It should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe the steps as sequential processes, many of these steps can be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the steps can be rearranged. A process can be terminated when its operation is complete, but it may also have additional steps not included in the figures. A process can correspond to a method, function, procedure, subroutine, subroutine, etc.

[0052] In this embodiment of the invention, storage information corresponding to each macro reference in the macro reference line is first created. The macro identifier positioning information is then added to the storage information corresponding to the macro reference. Then, based on the positional relationship between non-macro identifiers and macro references in the macro reference line, the non-macro identifier positioning information is added to the macro identifier list corresponding to the macro reference identifier. This ensures that each non-macro identifier also contains the binding object and position information in the storage information corresponding to each macro reference. This enables accurate and rapid binding of objects to non-macro identifiers after the macro reference line is expanded, and debugging functions are implemented based on the bound objects.

[0053] This invention also provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being configured to perform the method described in this invention.

[0054] This invention also provides a computer-readable storage medium storing computer-executable instructions for performing the methods described in this invention.

[0055] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention in any way. Although the present invention has been disclosed above with reference to preferred embodiments, it is not intended to limit the present invention. Any person skilled in the art can make some modifications or alterations to the above-disclosed technical content to create equivalent embodiments without departing from the scope of the present invention. Any simple modifications, equivalent changes, and alterations made to the above embodiments based on the technical essence of the present invention without departing from the scope of the present invention shall still fall within the scope of the present invention.

Claims

1. A method for processing inline non-macro identifiers referenced by macros, characterized in that, include: Step S1: Obtain the storage information corresponding to each macro reference in the macro reference line. The storage information corresponding to the macro reference includes a macro reference identifier, a line number in the macro expanded text of the macro reference line, and a list of macro identifiers corresponding to the line number in the macro expanded text of the macro reference line. The list of macro identifiers includes at least one macro identifier location information. The macro identifier location information includes a binding object, the location information of the macro reference corresponding to the macro identifier in the chip design code original file, and the location information of the macro identifier in the macro expanded text of the macro reference line. The binding object is an object that can be identified and supports the execution of debugging operations. Step S2: Obtain the location information of non-macro identifiers in the macro expanded text of the macro reference line and the corresponding macro reference identifier to be added. The non-macro identifier positioning information includes the binding object, the position information of the non-macro identifier in the original chip design code file, and the position information of the non-macro identifier in the macro expanded text of the macro reference line. The macro reference identifier to be added corresponding to the non-macro identifier whose starting column number is less than the starting column number of the first macro reference in the macro reference line is the first macro reference identifier. The macro reference identifier to be added corresponding to the non-macro identifier whose starting column number is greater than the ending column number of the (i-1)th macro reference and less than the starting column number of the ith macro reference is the ith macro reference identifier. The macro reference identifier to be added corresponding to the non-macro identifier whose starting column number is greater than the right starting column number of the ith macro reference is the ith macro reference identifier. i is any integer from 2 to I, and I is the total number of macro references in the macro reference line. Step S3: Add the non-macro identifier location information to the macro identifier list corresponding to the macro reference identifier to be added.

2. The method according to claim 1, characterized in that, Also includes: Step S4: Based on the position of the non-macro identifier in the macro expanded text of the macro reference line, find the storage information corresponding to the macro reference in the macro reference line and determine the binding object corresponding to the non-macro identifier. Step S5: Perform debugging operations on non-macro identifiers in the macro expansion text of the macro reference line based on the binding object corresponding to the non-macro identifier.

3. The method according to claim 1, characterized in that, Step S2 includes: Step S21: Starting from the first column of the macro reference row and ending from the last column, obtain the identifiers in the macro reference row to construct an identifier list, and obtain the macro references to construct a macro reference list. Step S22: Set the first pointer to point to the first identifier in the identifier list of the macro reference line, and set the second pointer to point to the first macro reference in the macro reference list; Step S23: If the starting column number of the identifier currently pointed to by the first pointer is less than the starting column number of the macro reference currently pointed to by the second pointer, then execute step S27; otherwise, execute step S24. Step S24: If the end column number of the identifier currently pointed to by the first pointer is less than the end column number of the macro reference currently pointed to by the second pointer, then execute step S25; otherwise, execute step S26. Step S25: If the current first pointer does not point to the last identifier in the identifier list of the macro reference line, then update the first pointer by 1 and return to execute step S23; otherwise, end step S2. Step S26: If the first pointer does not currently point to the last macro reference in the macro reference line, then update the second pointer by 1 and return to step S23. Step S27: Obtain the location information of the identifier currently pointed to by the first pointer, and determine the macro reference identifier currently pointed to by the second pointer as the macro reference identifier to be added corresponding to the identifier currently pointed to by the first pointer, and return to execute step S25.

4. The method according to claim 3, characterized in that, In step S27, obtaining the location information of the identifier currently pointed to by the first pointer includes: Step S271: Set the binding object of the identifier currently pointed to by the first pointer; Step S272: Obtain the line number and column number range of the identifier currently pointed to by the first pointer in the original chip design code file, and add them to the position information of the identifier currently pointed to by the first pointer in the original chip design code file; Step S273: Obtain the row number and column number range of the identifier currently pointed to by the first pointer in the macro expanded text of the macro reference line, and add it to the position information of the identifier currently pointed to by the first pointer in the macro expanded text of the macro reference line.

5. The method according to claim 4, characterized in that, Step S272 further includes: obtaining the code region identifier corresponding to the identifier currently pointed to by the first pointer in the original chip design code file, and adding it to the position information of the identifier currently pointed to by the first pointer in the original chip design code file.

6. The method according to claim 4, characterized in that, Step S273 further includes: determining the macro reference identifier currently pointed to by the second pointer as the macro reference identifier corresponding to the identifier currently pointed to by the first pointer, and adding it to the position information of the identifier currently pointed to by the first pointer in the macro expansion text of the macro reference line.

7. The method according to claim 1, characterized in that, Macro identifiers include signals, parameters, models, functions, tasks, and instances.

8. The method according to claim 1, characterized in that, Non-macro identifiers include signals, parameters, models, functions, tasks, and instances.

9. An electronic device, characterized in that, include: At least one processor; And, a memory communicatively connected to the at least one processor; The memory stores instructions that are executed by the at least one processor, the instructions being configured to perform the method of any one of claims 1-8.

10. A computer-readable storage medium, characterized in that, The device stores computer-executable instructions for performing the method of any one of claims 1-8.

Citation Information

Patent Citations

  • Macro definition text expansion method based on use line, electronic equipment and medium

    CN116756103A

  • Macro text expansion method based on constant macro definition, electronic equipment and medium

    CN117111950A

  • Macro text expansion method based on use chain, electronic equipment and medium

    CN117111951A

  • Method and system for automatically generating corresponding macro judgment according to reference of macro definition content

    CN119166150A

Cited By

  • Macro-containing cross-module reference identifier length acquisition method, electronic equipment and medium

    CN121635900A

  • Macro cross-module reference identifier length obtaining method, electronic device and medium

    CN121635900B