CN110489297B - FPGA debugging signal setting method based on graphical interface - Google Patents

FPGA debugging signal setting method based on graphical interface Download PDF

Info

Publication number
CN110489297B
CN110489297B CN201910793109.8A CN201910793109A CN110489297B CN 110489297 B CN110489297 B CN 110489297B CN 201910793109 A CN201910793109 A CN 201910793109A CN 110489297 B CN110489297 B CN 110489297B
Authority
CN
China
Prior art keywords
signal
debugging
file
design
information
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.)
Active
Application number
CN201910793109.8A
Other languages
Chinese (zh)
Other versions
CN110489297A (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.)
Shandong Inspur Scientific Research Institute Co Ltd
Original Assignee
Shandong Inspur Scientific Research Institute 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 Shandong Inspur Scientific Research Institute Co Ltd filed Critical Shandong Inspur Scientific Research Institute Co Ltd
Priority to CN201910793109.8A priority Critical patent/CN110489297B/en
Publication of CN110489297A publication Critical patent/CN110489297A/en
Application granted granted Critical
Publication of CN110489297B publication Critical patent/CN110489297B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to the field of FPGA design, and particularly provides a method for setting an FPGA debugging signal based on a graphical interface. Compared with the prior art, the method has the advantages that the design files in the design project are divided into two parts by a user, the two parts are respectively placed in two folders, one folder stores the top-layer design files, the other folder stores all the remaining design files, and then the following steps are carried out: s1, compiling a design engineering instantiation hierarchical search script; s2, compiling a signal retrieval script; s3, writing a signal debugging labeling script; s4, using a graphical interface library to write graphical interface software, and completing debugging, labeling and modification on the designated signals in the design file according to the input information; after the software completes the whole design engineering signal debugging and labeling work, the signal debugging and labeling information is popped up to export a successful dialog box, and a debugging signal file is printed out at the same time. The invention has the advantages of greatly shortening the time for manually writing the signal debugging and labeling and has good popularization value.

Description

FPGA debugging signal setting method based on graphical interface
Technical Field
The invention relates to the field of FPGA design, and particularly provides a method for setting an FPGA debugging signal based on a graphical interface.
Background
At present, the electronic information technology industry develops rapidly, the performance requirement on a special chip is higher and higher, the complexity of an integrated circuit is exponentially increased while the integrated circuit technology is rapidly advanced, the research and development production period is greatly prolonged, and the method cannot well adapt to changeable market demands. A large-scale field programmable logic device (FPGA) provides a method for flexibly realizing a circuit, and balances the contradiction between product performances in a product research and development period.
As the FPGA design scale is larger and larger, the signal quantity is increased rapidly, and the debugging difficulty is larger and larger. FPGA companies mostly offer a test software based on online debugging for board level debugging, such as chiprope, etc. The use of the online debugging software requires that a user set debugging labels such as mark_debug, key wire and the like in the design in advance, so that the FPGA implementation tool is prevented from optimally removing signals to be debugged when codes are integrated, and specific signals cannot be found and added in the follow-up set up debug process. In the process of designing the FPGA engineering codes, due to the fact that front-end design codes are modified, functions of different design modules in debugging design engineering are realized, and the like, debugging signals for chiprope are required to be adjusted for many times, due to the fact that debugging labels are distributed in all sub-modules, users do not have an intuitive mode to conveniently find the labels, labels cannot be conveniently added or deleted according to needs, manual operation is complex, and mistakes are easy to occur.
Disclosure of Invention
Aiming at the defects of the prior art, the invention provides the FPGA debugging signal setting method based on the graphical interface, which has strong practicability, is quick and convenient.
The technical scheme adopted for solving the technical problems is as follows:
the FPGA debugging signal setting method based on the graphic interface is characterized in that a user divides a design file in a design project into two parts, the two parts are respectively placed in two folders, one folder stores a top layer design file, the other folder stores all the remaining design files, and then the following steps are carried out:
s1, compiling a design engineering instantiation hierarchical search script;
s2, compiling a signal retrieval script;
s3, writing a signal debugging labeling script;
s4, using a graphical interface library to write graphical interface software, and completing debugging, labeling and modification on the designated signals in the design file according to the input information;
after the software completes the whole design engineering signal debugging and marking work, popping up a successful dialog box derived from signal debugging and marking information, and simultaneously printing and outputting a debugging signal file;
and finally, performing setting debugging, adding a debugging signal according to the debugging signal file, and storing.
Furthermore, the design project instantiation hierarchical search script is used for searching the design file of the whole project, the module of the top-level design file is named as a tree root through a search module and an instantiation format, each instantiation module of the design project and the subordinate relation between each instantiation module of the design project are found out from top to bottom through a recursion traversal method, instantiation hierarchical information of the design project is established, and the instantiation hierarchical information is stored as a tree node information file.
Further, the tree node is composed of four parts, namely a file name, a signal file name, a module name and an instantiation name.
Further, the signal retrieval script is configured to traverse the entire tree node information file according to a method that the tree node information file traverses from the tree root node in a preface, find the file from the design file and retrieve a signal keyword in the file according to a file name in the node information every time the tree node information file traverses, where the signal refers to an input/output port in the design file, retrieve whether a mark_debug or a key keyword exists at the head of a declaration line of the signal every time a signal is retrieved, determine whether the signal has been added as a debug signal label, and store the retrieved signal information output as a signal file, where the signal file is the order in which the design file is retrieved.
Further, the signal file includes a plurality of entries, each of which is composed of five parts, including a debug flag, a signal name, a signal input/output type, a signal bit width, and a signal type.
Preferably, the signal key input, output, inout, wire and/or reg.
Furthermore, the signal debugging labeling script is provided with three inputs, namely a design file name, a signal name and a signal addition and subtraction labeling mark;
when the script is called, the script finds the line where the signal name is located in the designated design file name according to the input information when the script is called, reads and stores the line text as a whole in a character string variable, replaces the line text where the signal name is located in the design file name with a space character, adds the debugging label or deletes the original debugging label in the character string variable according to the signal addition and subtraction label, and replaces the modified character string variable with the space character where the signal name is located in the design file name, thereby completing the debugging label modification of the signal name.
Further, using the software for writing the graphic interface library to read the generated tree node information file and the signal name file corresponding to each design file name, and displaying each instantiation module of the design project by using a tree directory, wherein each module is provided with an information frame and a sub-module unfolding button in front;
the information frame represents whether the module and an instantiation sub-module thereof have debugging marking signals or not, after the information frame is clicked to cancel selection, the debugging marking signals in the module and the instantiation sub-module thereof are cancelled, when the name of the module is clicked, a secondary interface is popped up, and the condition that the signals in the module are added with the debugging marking is displayed;
clicking the submodule unfolding button, and displaying the submodule instantiated under the module, wherein the information and the operation of each module are the same as those of the information frame;
after the signal debugging and labeling of each module are completed, clicking a toolbar saving button to save the current software operation state, clicking an export button, traversing each node by software from a top-level module, namely a tree root node in a preface traversing mode, calling a signal debugging and labeling script for each node module according to the saved debugging signal labeling operation information, and completing the signal debugging and labeling of each design file.
Further, the secondary interface is in a form of a table and consists of five columns and a plurality of rows, and each row displays detailed information of a signal;
the first column of the five columns is whether the signal is added with a debugging marking information frame, the signal debugging marking can be added or cancelled by clicking to select or cancel the frame, the second column is a signal name, the third column is the signal input/output port information, the fourth column is the signal type information, and the fifth column is the signal bit width information.
Compared with the prior art, the FPGA debugging signal setting method based on the graphical interface has the following outstanding beneficial effects:
aiming at the method for manually adding and deleting signal debugging labels in the existing FPGA design flow, the invention provides a platform and a method for completing highly-automatic signal debugging labels setting by using a scripting language and a graphical interface.
The method is convenient to implement, simple in flow, efficient and stable, can greatly shorten the time for manually writing the signal debugging and labeling, reduces the trouble of complicated manual operation and easy error, and further improves the development and development efficiency of the FPGA.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, and it is obvious that the drawings in the following description are some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow chart of a method for setting a debug signal of an FPGA based on a graphical interface.
Detailed Description
In order to provide a better understanding of the aspects of the present invention, the present invention will be described in further detail with reference to specific embodiments. It will be apparent that the described embodiments are only some, but not all, embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
A preferred embodiment is given below:
as shown in the flow chart in fig. 1, the design file in the user design project is divided into two parts, the two parts are respectively placed in two folders, and one folder stores the top design file and is named as top; the other folder holds all other files, named dsg.
Firstly, writing an instantiation hierarchical search script of a design project, wherein the script can search design files in the whole project, the script can search modules, instantiation formats and the like, the module name of a top-level design file in a top folder is used as a tree root, the subordinate relation between each instantiation module of the design project and each instantiation module is found out from top to bottom by a recursion traversal method, instantiation hierarchical information of the design project is established, and the instantiation hierarchical information is stored as a tree node information file. Each tree node file consists of four parts, namely a file name, a signal file name, a module name and an instantiation name.
And then writing a signal retrieval script, wherein the script traverses the whole tree node information file according to the tree node information file by a method of traversing the tree root node in an order, and each time one node is traversed, the signal retrieval script finds out a file from the design file according to the file name in the node information and retrieves the signal key word in the file, and the signal refers to an input/output port in the design file, wherein the retrieved signal key word is input, output, inout, wire, reg and the like. And each time a signal is searched, searching whether the signal is added with a key word such as mark_debug or key turn, judging whether the signal is marked by the added debug signal, and then outputting and storing the searched signal information as a signal file.
The signal storage file consists of five parts, namely a debugged label, a signal name, a signal input and output type, a signal bit width and a signal file name, wherein the signal file name is used as the order in which the design file is searched, the signal file name corresponding to the top-layer design file is 1, and the submodules are sequentially increased.
Then, when a signal debugging labeling script is written, three inputs are respectively designed file names, signal names and signal addition and subtraction labeling marks;
when the script is called, the script finds the line where the signal name is located in the designated design file name according to the input information when the script is called, reads and stores the line text as a whole in a character string variable, replaces the line text where the signal name is located in the design file name with a space character, adds the debugging label or deletes the original debugging label in the character string variable according to the signal addition and subtraction label, and replaces the modified character string variable with the space character where the signal name is located in the design file name, thereby completing the debugging label modification of the signal name. The signal debugging script is used as a sample and is written once and recorded in the circulation step,
and writing graphic interface software by using qt, wherein the software reads the tree node information file and the signal file corresponding to each design file generated in the steps, each instantiation module of the design file is displayed in a tree directory, an information frame and a sub-module unfolding button are arranged in front of each module, the information frame represents that debugging marking signals in the module and the sub-modules are cancelled, and when the name of the module is clicked, a secondary interface is popped up to display the condition of adding debugging marking to the signal in the module. Clicking a sub-module unfolding button, and displaying sub-modules instantiated under the sub-modules, wherein the information and the operation of each module are the same as those of the information frame. After the signal debugging and labeling of each module are completed, clicking a toolbar saving button to save the current software operation state, clicking an export button, traversing each node by software from a top-level module, namely a tree root node in a preface traversing mode, calling a signal debugging and labeling script for each node module according to the saved debugging signal labeling operation information, and completing the signal debugging and labeling of each design file.
The secondary interface is in a form of a table and consists of five columns and a plurality of rows, and each row displays detailed information of a signal; the first column of the five columns is whether the signal is added with a debugging marking information frame, the signal debugging marking can be added or cancelled by clicking to select or cancel the frame, the second column is a signal name, the third column is the signal input/output port information, the fourth column is the signal type information, and the fifth column is the signal bit width information.
Finally, after the software completes the whole design engineering signal debugging and labeling work, a successful dialog box is exported by popping up the signal debugging and labeling information, and meanwhile, a debugging signal list file is printed and output. And executing set up debug by using the comprehensive program, adding a debug signal according to the debug signal list file, and storing.
The above specific embodiments are merely illustrative of specific cases of the present invention, and the scope of the present invention includes, but is not limited to, the specific embodiments described above, any suitable changes or substitutions made by those skilled in the art, which are consistent with the method and system claims of FPGA-based USB interface interconnection of the present invention, shall fall within the scope of the present invention.

Claims (2)

1. The FPGA debugging signal setting method based on the graphic interface is characterized in that a user divides a design file in a design project into two parts, the two parts are respectively placed in two folders, one folder stores a top layer design file, the other folder stores all the remaining design files, and then the following steps are carried out:
s1, compiling a design engineering instantiation hierarchical search script;
the instantiation hierarchical search script searches design files in the whole project, the module name of the top design file in the top folder is used as a tree root through a search module and an instantiation format thereof, each instantiation module of the design project and the subordinate relation between the instantiation modules are found out from top to bottom through a recursion traversal method, instantiation hierarchical information of the design project is established, and the instantiation hierarchical information is stored as a tree node information file;
each tree node file consists of four parts, namely a file name, a signal file name, a module name and an instantiation name;
s2, compiling a signal retrieval script;
the signal retrieval script traverses the whole tree node information file according to the tree node information file by a method of traversing the tree root node in an order, and each time one node is traversed, the signal retrieval script finds out the file from the design file according to the file name in the node information and retrieves the signal key words in the file, wherein the signal refers to an input/output port in the design file;
wherein, the signal keywords searched are input, output, inout, wire and reg; each time a signal is retrieved, retrieving whether the signal is added with a key word mark_debug or key feature, judging whether the signal is marked by the added debug signal, and then outputting and storing the retrieved signal information as a signal file;
the signal file consists of five parts, namely whether debug marks, signal names, signal input and output types, signal bit widths and signal file names are set or not, the signal file names are used as the order in which design files are searched, the signal file name corresponding to the top-layer design file is 1, and the sub-modules are sequentially increased;
s3, writing a signal debugging labeling script;
the signal debugging labeling script has three inputs, namely a design file name, a signal name and a signal addition and subtraction labeling mark;
when a signal debugging labeling script is called, the script finds out a line where a signal name is located in a specified design file name according to input information when the signal debugging labeling script is called, the text in the line where the signal name is located in the design file name is read as a whole and stored in a character string variable, then the text in the line where the signal name is located in the design file name is replaced by a space character, then a debugging label is added in the character string variable or the original debugging label is deleted according to a signal addition and subtraction label, and the modified character string variable is replaced by the space character in the line where the signal name is located in the design file name, so that the debugging label modification of the signal name is completed;
the signal debugging script is used as a sample and is written once and recorded in the circulating step;
s4, using a graphical interface library to write graphical interface software, and completing debugging, labeling and modification on the designated signals in the design file according to the input information;
using qt to write graphic interface software, wherein the graphic interface software reads the tree node information files and the signal files corresponding to the design files generated in the steps, and displays each instantiation module of the design files in a tree catalog, and each instantiation module is preceded by an information frame and a sub-module unfolding button;
clicking a sub-module unfolding button, and displaying the sub-module instantiated under the instantiation module;
the information frame represents whether the instantiation module and an instantiation sub-module thereof have debugging marking signals, the information frame is clicked, after the information frame is deselected, the debugging marking signals in the instantiation module and the instantiation sub-module thereof are all cancelled, when the name of the instantiation module is clicked, a secondary interface is popped up, and the condition of adding the debugging marking to the signals in the instantiation module is displayed;
after the signal debugging and labeling of each instantiation module are completed, clicking a toolbar saving button to save the current software operation state, clicking an export button, traversing each node by software from a top-level module, namely a tree root node in a preface traversing mode, calling a signal debugging and labeling script for each node module according to the saved debugging signal labeling operation information, and completing the signal debugging and labeling of each design file;
after the software completes the whole design engineering signal debugging and marking work, popping up a successful dialog box derived from signal debugging and marking information, and simultaneously printing and outputting a debugging signal file;
and finally, performing setting debugging, adding a debugging signal according to the debugging signal file, and storing.
2. The method for setting the debugging signals of the FPGA based on the graphic interface according to claim 1, wherein the secondary interface is in a form of a table and consists of five columns and a plurality of rows, and each row displays detailed information of one signal;
the first column of the five columns is whether the signal is added with a debugging marking information frame, the signal debugging marking is added or cancelled by clicking to select or cancel the debugging marking information frame, the second column is a signal name, the third column is the signal input/output port information, the fourth column is the signal type information, and the fifth column is the signal bit width information.
CN201910793109.8A 2019-08-26 2019-08-26 FPGA debugging signal setting method based on graphical interface Active CN110489297B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910793109.8A CN110489297B (en) 2019-08-26 2019-08-26 FPGA debugging signal setting method based on graphical interface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910793109.8A CN110489297B (en) 2019-08-26 2019-08-26 FPGA debugging signal setting method based on graphical interface

Publications (2)

Publication Number Publication Date
CN110489297A CN110489297A (en) 2019-11-22
CN110489297B true CN110489297B (en) 2023-07-25

Family

ID=68554112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910793109.8A Active CN110489297B (en) 2019-08-26 2019-08-26 FPGA debugging signal setting method based on graphical interface

Country Status (1)

Country Link
CN (1) CN110489297B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113656236B (en) * 2020-05-12 2024-05-28 大唐移动通信设备有限公司 Data processing method and device
CN113722204A (en) * 2020-05-26 2021-11-30 华为技术有限公司 Application debugging method, system, device and medium
CN114741993B (en) * 2022-04-18 2023-06-16 山东浪潮科学研究院有限公司 Script-based data flow graph generation method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967521A (en) * 2005-11-17 2007-05-23 腾讯科技(深圳)有限公司 Method for labeling computer resource and system therefor
GB0709105D0 (en) * 2007-05-11 2007-06-20 Univ Leicester Debugging tool
CN110069892A (en) * 2019-05-08 2019-07-30 山东浪潮人工智能研究院有限公司 A kind of FPGA pin assignment design method and device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967521A (en) * 2005-11-17 2007-05-23 腾讯科技(深圳)有限公司 Method for labeling computer resource and system therefor
GB0709105D0 (en) * 2007-05-11 2007-06-20 Univ Leicester Debugging tool
CN110069892A (en) * 2019-05-08 2019-07-30 山东浪潮人工智能研究院有限公司 A kind of FPGA pin assignment design method and device

Also Published As

Publication number Publication date
CN110489297A (en) 2019-11-22

Similar Documents

Publication Publication Date Title
CN110489297B (en) FPGA debugging signal setting method based on graphical interface
US9760347B2 (en) Method and system to identify GUI objects for non-markup-language-presented applications
JPS61223941A (en) Method for storing and retrieving chemical structure
US6851089B1 (en) Software application and associated methods for generating a software layer for structuring semistructured information
US20040268257A1 (en) Method, apparatus, and system for providing multi-language character strings within a computer
US7093207B1 (en) Data analysis flow engine
US20060259891A1 (en) System and method of generating an auto-wiring script
CN101196963B (en) Indexing system and method of generic chemical structure
CN116028653B (en) Method and system for constructing map by visually configuring multi-source heterogeneous data
US10241899B2 (en) Test input information search device and method
CN116090416B (en) Standard writing method, system, equipment and medium based on standard knowledge graph
CN109558319B (en) Method and device for testing Web page control and storage medium
CN110647573A (en) Chart visual editing method and system based on database technology
CN111506593A (en) Software system data upgrading method, device, equipment and storage medium
CN114116475A (en) Software debugging method based on log
CN112579456B (en) Web automatic testing method and device
CN114594940A (en) Process project building method based on RPA editor
CN102955761A (en) Size information output system and size information output method
CN112597040A (en) Interface automatic testing method and device and electronic equipment
CN116467037B (en) Graphic user interface work state recovery method
US11960380B2 (en) Debugging SQL statements
CN111124548B (en) Rule analysis method and system based on YAML file
CN115248803B (en) Collection method and device suitable for network disk file, network disk and storage medium
CN115795055B (en) Knowledge graph construction method and device for land use data
CN112559318B (en) Test case generation method and device, electronic equipment and 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
TA01 Transfer of patent application right

Effective date of registration: 20230626

Address after: 250100 building S02, No. 1036, Langchao Road, high tech Zone, Jinan City, Shandong Province

Applicant after: Shandong Inspur Scientific Research Institute Co.,Ltd.

Address before: North 6th floor, S05 building, Langchao Science Park, 1036 Langchao Road, hi tech Zone, Jinan City, Shandong Province, 250100

Applicant before: SHANDONG INSPUR ARTIFICIAL INTELLIGENCE RESEARCH INSTITUTE Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant