CN109492337B - Information flow tracking model generation method of programmable logic device - Google Patents

Information flow tracking model generation method of programmable logic device Download PDF

Info

Publication number
CN109492337B
CN109492337B CN201811541599.4A CN201811541599A CN109492337B CN 109492337 B CN109492337 B CN 109492337B CN 201811541599 A CN201811541599 A CN 201811541599A CN 109492337 B CN109492337 B CN 109492337B
Authority
CN
China
Prior art keywords
information flow
truth table
programmable logic
code
logic device
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
CN201811541599.4A
Other languages
Chinese (zh)
Other versions
CN109492337A (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.)
Beijing Institute of Computer Technology and Applications
Original Assignee
Beijing Institute of Computer Technology and Applications
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 Beijing Institute of Computer Technology and Applications filed Critical Beijing Institute of Computer Technology and Applications
Priority to CN201811541599.4A priority Critical patent/CN109492337B/en
Publication of CN109492337A publication Critical patent/CN109492337A/en
Application granted granted Critical
Publication of CN109492337B publication Critical patent/CN109492337B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention relates to a generation method of a base high-precision information flow tracking model, which is characterized in that programmable logic device codes are input according to work category classification, instantiated module names in the codes are identified, the module names are matched with module names in a netlist library corresponding to the programmable logic devices, if the module names are consistent, the codes are in a gate level, otherwise, the codes are in an RTL level, display flows in the RTL level are processed, all inputs are traversed, assignment statement output is calculated, and results are converted into a truth table; inputting an original truth table by using a gate-level information flow theory to generate a truth table of a full input-output information flow stain label; and converting the Carnot diagram simplification truth table into information flow tracking logic, processing the implicit flow in the RTL level layer, and realizing the information flow processing of the RTL level layer code. And processing the information flow of the gate level. And generating an information flow tracking model of the programmable logic device by classifying RTL level hierarchical codes and gate level hierarchical codes in the programmable logic device and respectively performing information flow tracking processing.

Description

Information flow tracking model generation method of programmable logic device
Technical Field
The invention relates to the field of integrated circuit security detection, in particular to a method for generating an information flow tracking model of a programmable logic device.
Background
In programmable logic devices, there may be some security concerns including bugs left unintentionally by designers or hardware trojans maliciously implanted by attackers. The gate-level information flow technology is a technology capable of capturing all binary bit data flow in integrated circuit design, can effectively detect bugs or malicious codes in the design, most of the existing gate-level information flow tracking technologies are designed for ASIC (application specific integrated circuit), and the existing gate-level information flow technology for generating a programmable logic device information flow tracking model has the following defects:
the applicability is poor. The existing gate-level information flow technology uses Design Compiler synthesized netlist for ASIC Design, and only AND, OR, or and non-equal basic logic units are in the gate-level netlist. For the design of programmable logic devices, the combinational logic in the gate-level netlist is realized by a look-up table (LUT), so the prior art cannot be completely suitable for supporting the design of programmable logic devices such as xlnx, altera and the like.
The information flow accuracy is not high. Because the traditional gate-level information flow technology cannot process the cells such as LUT in the programmable logic device netlist, the cells can only be blacked for generating the information flow tracking model, and the generated information flow model has low accuracy.
Disclosure of Invention
The invention aims to provide a high-precision information flow tracking model generation method of a programmable logic device based on black-and-white box classification processing, which is used for solving the problems in the prior art.
The invention discloses a high-precision information flow tracking model generation method of a programmable logic device based on black and white box classification processing, which comprises the following steps: step 1: inputting a code to be tested; and 2, step: analyzing the type of the code to be tested line by line, matching the name of the instantiated module in the code to be tested with the name of the module in the netlist library corresponding to the programmable logic device, if the name of the instantiated module in the code to be tested is consistent with the name of the module in the netlist library corresponding to the programmable logic device, judging that the code to be tested is in a gate level, performing step 10, and if not, judging that the code to be tested is in an RTL level, and performing step 3; and step 3: judging the type of the code information flow to be detected, if the type is an implicit flow, performing the step 4, and if the type is an explicit flow, performing the step 6; and 4, step 4: converting condition branches in the implicit flow code to be tested into logic equivalent selector modules; and 5: replacing the selector module with a selector module with information flow tracing logic, wherein the selector module with the information flow tracing logic is a module with the information flow tracing logic and the selector logic, and going to step 9; and 6: generating a truth table for displaying the flow statement; and 7: converting a truth table of a display flow statement into a truth table of a stain label of a full input and output information flow; and 8: converting the truth table into a logic expression, and adding the logic expression into the original logic; and step 9: judging whether the processing of the code to be detected is completed or not, if not, returning to the step 3, otherwise, performing the step 17; step 10: selecting an information flow tracking library of a device corresponding to the gate level hierarchical code; step 11: selecting the next unit in the gate level hierarchical code, judging the type, executing the step 12 if the unit is a lookup table module, and otherwise, executing the step 15; step 12: generating a stored truth table according to the configuration parameters of the lookup table module; step 13: converting the stored truth table into a truth table of a full input and output information flow stain label; step 14: simplifying the truth table, converting the truth table into a logic expression, adding the converted logic expression into the original lookup table module, and performing the step 16; step 15: automatically replacing the selection unit with a corresponding logic unit in the selected information flow tracking library; step 16: judging whether the processing of the code to be detected is finished, if not, returning to the step 11, otherwise, performing the step 17; and step 17: and integrating the codes to be detected after information flow processing to generate the information flow tracking model of the programmable logic device.
According to an embodiment of the method for generating an information flow tracking model of a programmable logic device, in step 7, a truth table of a display flow statement is converted into a truth table of a full input/output information flow stain label according to a gate-level information flow theory.
According to an embodiment of the information flow tracking model generation method of the programmable logic device, in step 8, the truth table is simplified by using the carnot diagram principle and converted into the logic expression.
In an embodiment of the method for generating an information flow tracking model of a programmable logic device according to the present invention, in step 13, the truth table is converted into a truth table of a full-input-output information flow stain label according to a gate-level information flow theory.
In an embodiment of the information flow tracking model generation method for a programmable logic device according to the present invention, step 14: and converting the original simplified value table of the Carnot graph into a logic expression.
The invention provides a method for generating an information flow tracking model of a programmable logic device for mixed level processing.
Compared with other information flow tracking model generation methods, the method has the following advantages:
(1) The method is suitable for various programmable logic devices. The information flow tracing model generation method of the programmable logic device can select a corresponding information flow tracing library according to the programmable logic device corresponding to the netlist code, and is therefore suitable for various programmable logic devices such as XILINX and ALTERA.
(2) The information flow tracking accuracy is high. According to the information flow tracking model generation method of the programmable logic device, information flow processing is respectively carried out on RTL level layers and gate level layers in the programmable logic device, and LUT (look-up table) and other units in the gate level layers are accurately tracked according to the device model, so that the generated information flow tracking model is high in accuracy.
Drawings
FIG. 1 is a general schematic diagram of a method for generating an information flow tracking model of a programmable logic device according to the present invention;
fig. 2 is a flow chart of a method for generating an information flow tracking model of a programmable logic device according to the present invention.
Detailed Description
In order to make the objects, contents, and advantages of the present invention clearer, the following detailed description of the embodiments of the present invention will be made in conjunction with the accompanying drawings and examples.
Fig. 1 is a general schematic diagram of a method for generating an information flow tracking model of a programmable logic device according to the present invention, fig. 2 is a flowchart of the method for generating the information flow tracking model of the programmable logic device according to the present invention, and as shown in fig. 1 and fig. 2, the method for generating the information flow tracking model of the programmable logic device according to the present invention includes:
as shown in fig. 1, a method for generating an information flow tracking model of a programmable logic device includes the following steps:
step 1: inputting a code v/vhd to be tested;
step 2: analyzing the type of the code to be tested, matching the name of the instantiated module in the code with the name of the module in the netlist library corresponding to the programmable logic device, if the name of the instantiated module in the code is consistent with the name of the module in the netlist library corresponding to the programmable logic device, performing the step 10, otherwise, performing the step 3;
and step 3: selecting the next row of codes, judging the type of the information flow, if the information flow is an implicit flow, performing the step 4, and if the information flow is an explicit flow, performing the step 6;
and 4, step 4: the selector module is a combinational logic circuit which selects a specified one from a group of input signals according to given input signals and sends the selected one to an output end, and the selector module is equivalent to the conditional branch, but is easier to realize information flow processing;
and 5: replacing the selector module with a selector module with information flow tracing logic, wherein the selector module with the information flow tracing logic is a module with the information flow tracing logic and the selector logic, and going to step 9;
and 6: generating a truth table for displaying the flow statement;
and 7: converting a truth table of a display flow statement into a truth table of a full input and output information flow stain label according to a gate-level information flow theory;
and 8: simplifying the truth table by using a Carnot diagram principle, converting the truth table into a logic expression, and adding the logic into the original logic;
and step 9: judging whether the processing of the code to be detected is finished, if not, returning to the step 3, otherwise, performing the step 17;
step 10: manually selecting an information flow tracking library of a device corresponding to the gate level hierarchical code, wherein the information flow tracking library is a set of minimum gate level units generated according to a gate level information flow theory;
step 11: selecting the next unit in the gate level hierarchical code, judging the type of the next unit, if the next unit is an LUT module, executing the step 12, and if the next unit is not the LUT module, executing the step 15;
step 12: generating a stored truth table according to the configuration parameters of the LUT module;
step 13: converting the truth table into a truth table of a full input and output information flow stain label according to a gate level information flow theory;
step 14: converting the original carnot diagram simplification value table into a logic expression, adding the logic into the original LUT module, and performing step 16;
step 15: automatically replacing the selection unit with a corresponding logic unit in the selected information flow tracking library;
step 16: judging whether the processing of the code to be detected is finished, if not, returning to the step 11, otherwise, performing the step 17;
and step 17: and integrating the codes to be detected after information flow processing to generate the information flow tracking model of the programmable logic device.
As shown in fig. 1, the method for generating a base high-precision information flow tracking model according to the present invention classifies according to the working categories, and includes: the method comprises three parts of (1) classification of programmable logic device design codes, (2) RTL level information flow processing and (3) gate level information flow processing.
(1) Classifying the programmable logic device design code includes:
the main role of code classification is to classify various types of codes in programmable logic device design into two types, namely RTL level hierarchy and gate level hierarchy. Programmable logic device designs typically include code from different sources: one is handwritten code, which is written manually by a designer, belonging to the RTL level hierarchy (register transfer level). The other is third party IP core code, which is provided by a third party vendor, and these IP cores are usually gate-level netlists in order to protect property rights. The following is a code classification processing method: first, a programmable logic device code is input. Then, the module name instantiated in the code is identified. And finally, matching the module name with the module name in the netlist library corresponding to the programmable logic device, wherein if the module name is consistent with the module name in the netlist library, the code is in a gate level, and otherwise, the code is in an RTL level.
(2) The RTL level hierarchical information flow processing comprises the following steps:
the RTL level hierarchical information flow processing is used for designing RTL level hierarchical code for the programmable logic device and adding information flow tracking logic.
First, the display stream in the RTL level hierarchy is processed. Display flows are usually accompanied by direct movement of data, common explicit flows are assignment statements. The specific method comprises the following steps:
traversing all inputs, calculating assignment statement output, and converting a result into a truth table;
inputting an original truth table by using a gate-level information flow theory to generate a truth table of a full input-output information flow stain label;
the carnot diagram simplification truth table is used for converting into information flow tracking logic.
Then, processing the implicit flow in the RTL level hierarchy to realize the information flow processing of the RTL level hierarchy code. Implicit flows stem from the uncertain behavior of the system, such as conditional branches, conditional loops. The specific method comprises the following steps:
converting the conditional statement into a logically equivalent selector;
the selector module is replaced with a selector module with information flow tracing logic.
(3) The gate level hierarchical information flow processing comprises the following steps:
most of the IP cores in the design of the programmable logic device are gate-level netlist codes. The gate level hierarchical code information flow processing is used for adding information flow tracking logic to gate level hierarchical codes in the programmable logic device design.
Firstly, inputting a gate-level netlist code, manually selecting an information flow tracking library of a device corresponding to the netlist code, wherein the information flow tracking library is a set of minimum gate-level units generated according to a gate-level information flow theory, and the information flow tracking library can be repeatedly used after being established.
Then, information flow tracking logic of a look-up table (LUT) is generated. Besides basic logic units, the netlist is also provided with a lookup table (LUT) module, information flow tracing logic of the LUT module is generated according to parameters of the LUT, and the tracing logic is added into the LUT module. The combinational logic in the programmable logic device is realized by a truth table in an LUT memory, and the LUT information flow tracking logic is generated by the following method:
1) The logic of the LUT is determined by the configuration parameters, so a truth table in the LUT memory under full input is generated according to the parameters of the LUT;
2) Inputting an original truth table by using a gate-level information flow theory to generate a truth table of a full input-output information flow stain label;
3) The carnot diagram is used to simplify the truth table, translate to information flow tracking logic, and add the logic to the original LUT block.
And finally, replacing other logic units (such as IBUF, FDCP and the like) in the netlist with corresponding logic units in the selected information flow tracking library to realize the information flow processing of the gate level.
Compared with other information flow tracking model generation methods, the information flow tracking model generation method of the programmable logic device has the following advantages that:
(1) The method is suitable for various programmable logic devices. The information flow tracing model generation method of the programmable logic device can select a corresponding information flow tracing library according to the programmable logic device corresponding to the netlist code, and is suitable for various programmable logic devices such as XILINX, ALTERA and the like.
(2) The information flow tracking accuracy is high. The information flow tracking model generation method of the programmable logic device respectively processes information flows of a white box and a black box in the programmable logic device, and accurately tracks information flows of an LUT (look-up table) and other units in the black box according to the model of the device, so that the generated information flow tracking model is high in accuracy.
The method has the following advantages:
(1) The method is suitable for various programmable logic devices. The information flow tracing model generation method of the programmable logic device can select a corresponding information flow tracing library according to the programmable logic device corresponding to the netlist code, and is suitable for various programmable logic devices such as XILINX, ALTERA and the like.
(2) The information flow tracking accuracy is high. The information flow tracking model generation method of the programmable logic device respectively processes information flow of RTL level layers and gate level layers in the programmable logic device, and accurately tracks information flow of LUTs and other units in the gate level layers according to the device model, so that the generated information flow tracking model is high in accuracy.
The above description is only a preferred embodiment of the present invention, and it should be noted that, for those skilled in the art, several modifications and variations can be made without departing from the technical principle of the present invention, and these modifications and variations should also be regarded as the protection scope of the present invention.

Claims (5)

1. A high-precision information flow tracking model generation method of a programmable logic device based on black-and-white box classification processing is characterized by comprising the following steps:
step 1: inputting a code to be tested;
step 2: analyzing the type of the code to be tested line by line, matching the name of the instantiated module in the code to be tested with the name of the module in the netlist library corresponding to the programmable logic device, if the name of the instantiated module in the code to be tested is consistent with the name of the module in the netlist library corresponding to the programmable logic device, judging that the code to be tested is in a gate level, performing step 10, and if not, judging that the code to be tested is in an RTL level, and performing step 3;
and step 3: judging the type of the code information flow to be detected, if the type is an implicit flow, performing the step 4, and if the type is an explicit flow, performing the step 6;
and 4, step 4: converting condition branches in the implicit flow code to be tested into a logically equivalent selector module;
and 5: replacing the selector module with a selector module with information flow tracing logic, wherein the selector module with the information flow tracing logic is a module with the information flow tracing logic and the selector logic, and going to step 9;
step 6: generating a truth table for displaying the flow statement;
and 7: converting a truth table of a display flow statement into a truth table of a full input and output information flow stain label;
and 8: converting the truth table into a logic expression, and adding the logic expression into the original logic;
and step 9: judging whether the processing of the code to be detected is finished, if not, returning to the step 3, otherwise, performing the step 17;
step 10: selecting an information flow tracking library of a device corresponding to the gate level hierarchical code;
step 11: selecting the next unit in the gate level hierarchical code, judging the type, executing the step 12 if the unit is a lookup table module, and otherwise, executing the step 15;
step 12: generating a stored truth table according to the configuration parameters of the lookup table module;
step 13: converting the stored truth table into a truth table of a full input and output information flow stain label;
step 14: simplifying the truth table, converting the truth table into a logic expression, adding the converted logic expression into the original lookup table module, and performing the step 16;
step 15: automatically replacing the selection unit with a corresponding logic unit in the selected information flow tracking library;
step 16: judging whether the processing of the code to be detected is finished, if not, returning to the step 11, otherwise, performing the step 17;
and step 17: and integrating the codes to be detected after information flow processing to generate a programmable logic device information flow tracking model.
2. The method for generating a high-precision information flow tracking model of a programmable logic device based on black-and-white box classification processing according to claim 1, wherein the step 7: and converting the truth table of the display flow statement into the truth table of the stain label of the full input and output information flow according to a gate-level information flow theory.
3. The method for generating a high-precision information flow tracking model of a programmable logic device based on black-and-white box classification processing according to claim 1, wherein the step 8: simplifying the truth table by using the Kano diagram principle, converting the truth table into a logic expression, and adding the logic into the original logic.
4. The method for generating a high-precision information flow tracking model of a programmable logic device based on black-and-white box classification processing according to claim 1, wherein the step 13: and converting the truth table into a truth table of the full input and output information flow stain labels according to a gate-level information flow theory.
5. The method for generating a high-precision information flow tracking model of a programmable logic device based on black-and-white box classification processing according to claim 1, wherein the step 14: and converting the original simplified value table of the Carnot graph into a logic expression.
CN201811541599.4A 2018-12-17 2018-12-17 Information flow tracking model generation method of programmable logic device Active CN109492337B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811541599.4A CN109492337B (en) 2018-12-17 2018-12-17 Information flow tracking model generation method of programmable logic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811541599.4A CN109492337B (en) 2018-12-17 2018-12-17 Information flow tracking model generation method of programmable logic device

Publications (2)

Publication Number Publication Date
CN109492337A CN109492337A (en) 2019-03-19
CN109492337B true CN109492337B (en) 2023-02-03

Family

ID=65710602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811541599.4A Active CN109492337B (en) 2018-12-17 2018-12-17 Information flow tracking model generation method of programmable logic device

Country Status (1)

Country Link
CN (1) CN109492337B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110096563B (en) * 2019-04-28 2023-04-28 天津城建大学 Ecological network construction method based on ecological service logic coding
CN111177987B (en) * 2019-12-20 2023-09-22 北京天下行知科技有限公司 Method, device, terminal and storage medium for analyzing integrated circuit design
CN111221690B (en) * 2019-12-20 2023-09-22 北京天下行知科技有限公司 Model determination method and device for integrated circuit design and terminal
CN111427799A (en) * 2020-04-14 2020-07-17 北京计算机技术及应用研究所 IP core security path selection and cut-off method
CN113822007A (en) * 2021-11-22 2021-12-21 北京芯愿景软件技术股份有限公司 Circuit generation method, circuit generation device, circuit generation equipment and circuit generation medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105046153A (en) * 2015-07-31 2015-11-11 中国人民解放军国防科学技术大学 Hardware trojan horse detection method based on few-state point analysis
CN106407810A (en) * 2016-09-27 2017-02-15 中国电子科技集团公司第五十八研究所 An RTL hardware Trojan detection method based on the recursive descent algorithm
CN107367686A (en) * 2017-06-19 2017-11-21 西北工业大学 A kind of generation method of RTL hardware Trojan horses test vector

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10719631B2 (en) * 2016-07-27 2020-07-21 Tortuga Logic Inc. Method and system for detecting hardware trojans and unintentional design flaws

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105046153A (en) * 2015-07-31 2015-11-11 中国人民解放军国防科学技术大学 Hardware trojan horse detection method based on few-state point analysis
CN106407810A (en) * 2016-09-27 2017-02-15 中国电子科技集团公司第五十八研究所 An RTL hardware Trojan detection method based on the recursive descent algorithm
CN107367686A (en) * 2017-06-19 2017-11-21 西北工业大学 A kind of generation method of RTL hardware Trojan horses test vector

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
基于特征匹配的IP软核硬件木马检测;倪林等;《计算机工程》;20170315(第03期);全文 *
硬件木马:关键问题研究进展及新动向;黄钊等;《计算机学报》;20180926(第05期);全文 *
硬件木马技术研究综述;牛小鹏等;《信息工程大学学报》;20121215(第06期);全文 *
硬件木马检测方法研究;金标等;《保密科学技术》;20171120(第11期);全文 *

Also Published As

Publication number Publication date
CN109492337A (en) 2019-03-19

Similar Documents

Publication Publication Date Title
CN109492337B (en) Information flow tracking model generation method of programmable logic device
US7464015B2 (en) Method and apparatus for supporting verification, and computer product
US9298865B1 (en) Debugging an optimized design implemented in a device with a pre-optimized design simulation
US7437698B2 (en) Method and program product for protecting information in EDA tool design views
US8533647B1 (en) Method for generating an integrated and unified view of IP-cores for hierarchical analysis of a system on chip (SoC) design
CN107239616B (en) Comparison method of integrated circuit schematic diagram
US20230289502A1 (en) Recovery of a hierarchical functional representation of an integrated circuit
US20150100928A1 (en) Complex layout-based topological data analysis of analog netlists to extract hierarchy and functionality
CN110442929B (en) Method for realizing automatic instantiation of chip system top layer based on perl
CN106201859A (en) A kind of regression testing method and system
Alexander et al. System specification in Rosetta
CN115620039A (en) Image labeling method, device, equipment, medium and program product
US8555228B2 (en) Tool for glitch removal
CN107451050A (en) Function acquisition methods and device, server
CA2315552A1 (en) Gate extractor
CN111142013B (en) MAX7000 series CPLD (Complex programmable logic device) based logic reduction method
Singh et al. Knowledge-guided methodology for third-party soft ip analysis
US8607175B1 (en) Identifying logic blocks in a synthesized logic design that have specified inputs
CN106599499A (en) Method for automatically generating XilinxFPGA constraint file
CN106650136A (en) Method for detecting functional consistency of standard units of timing library and netlist library
Chen et al. A deep learning-based FPGA function block detection method with bitstream to image transformation
Zhang et al. Speeding up vlsi layout verification using fuzzy attributed graphs approach
CN110335323B (en) Bit stream imaging method of field programmable gate array device
US20230259683A1 (en) Selective extraction of design layout
US20240119205A1 (en) Recommending changes in the design of an integrated circuit using a rules-based analysis of failures

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