CN111966617B - Sensing information communication method, central processing unit and substrate management controller - Google Patents
Sensing information communication method, central processing unit and substrate management controller Download PDFInfo
- Publication number
- CN111966617B CN111966617B CN202010695999.1A CN202010695999A CN111966617B CN 111966617 B CN111966617 B CN 111966617B CN 202010695999 A CN202010695999 A CN 202010695999A CN 111966617 B CN111966617 B CN 111966617B
- Authority
- CN
- China
- Prior art keywords
- sensing information
- ipmi
- information
- heartbeat
- command
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 25
- 238000000034 method Methods 0.000 title claims abstract description 22
- 239000000758 substrate Substances 0.000 title claims abstract description 21
- 238000004891 communication Methods 0.000 title abstract description 12
- 230000004044 response Effects 0.000 claims abstract description 26
- 108010028984 3-isopropylmalate dehydratase Proteins 0.000 claims abstract 22
- 230000001953 sensory effect Effects 0.000 claims description 3
- 239000002699 waste material Substances 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 238000012544 monitoring process Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/28—Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3058—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
Abstract
The invention discloses a sensing information communication method, a central processing unit and a substrate management controller. The sensing information communication method comprises the following steps: the method comprises the steps that a substrate management controller obtains sensing information of a corresponding sensor according to a sensing information demand list stored in the substrate management controller; when the substrate management controller receives the heartbeat signal sent by the central processing unit, the acquired sensing information and the heartbeat response signal are integrated and transmitted back to the central processing unit. The central processing unit comprises an application program, a sensor database and a watchdog slave terminal. The substrate management controller comprises an IPMI server and a watchdog master end. The method has the advantages that the number of the requests received by the BMC periodically is stable and controllable, the sensing information is integrated into the heartbeat information which is transmitted at regular intervals originally, the number of packets between the BMC and the CPU is greatly reduced, the reliability of the BMC is improved, a uniform data acquisition point is provided for a plurality of application programs, and bandwidth waste is avoided.
Description
Technical Field
The invention relates to the field of fault monitoring, in particular to a sensing information communication method, a central processing unit and a substrate management controller.
Background
A Baseboard Management Controller (BMC) is a small dedicated processor used for remote monitoring and Management of a host system. The System is usually located on a motherboard of a computer, a server, a network or a storage device, can be remotely accessed through a private or shared network, and has a plurality of connections with a host System, so that the System can monitor hardware through a sensor, a flash memory BIOS (Basic Input Output System)/UEFI (Unified Extensible Firmware Interface), and record the use state of the host, including temperature, voltage, fan System, power state, and the like.
In the current BMC monitoring scheme, most of the implementation methods are that the BMC is responsible for reading data of peripheral sensors, such as measured values of fans, voltage, temperature, and the like, and when a Central Processing Unit (CPU) side needs the monitored data, the monitored data is obtained from the BMC through an Intelligent Platform Management Interface (IPMI) protocol, where communication architectures of the CPU, the BMC, and the sensors are shown in fig. 1. In conjunction with BMC, IPMI allows a system administrator to perform monitoring and management tasks remotely in a variety of ways without having to directly connect the system in the field, such as computing the power cycles of the servers, installing BIOS or firmware updates, and monitoring fan speed and temperature.
However, when the CPU side application program simultaneously inquires the BMC sensor data, a large number of instantaneously generated IPMI requests may cause an excessive load on the BMC and cause a problem that the BMC cannot process the packet in time. Furthermore, there are many Applications (APPs) of similar types on the CPU side, for example, both Application a and Application B need to acquire temperature information, which causes applications to request repeated sensor information from the BMC side, resulting in unnecessary waste of bandwidth.
Disclosure of Invention
In order to solve the technical problem, the invention provides a sensing information communication method, a central processing unit and a baseboard management controller, which can enable the number of requests periodically received by a BMC to be stable and controllable, and prevent multiple application programs from acquiring repetitive sensing information from the BMC.
In order to achieve the purpose, the invention adopts the following technical scheme:
a method of communicating sensory information, comprising:
the substrate management controller acquires the sensing information of the corresponding sensor according to a sensing information demand list stored in the substrate management controller;
when the substrate management controller receives the heartbeat signal sent by the central processing unit, the acquired sensing information and the heartbeat response signal are integrated and transmitted back to the central processing unit.
Further, the method for maintaining the sensing information demand list comprises the following steps:
the application program of the central processing unit requests registration, and the registration information comprises sensing information required by the application program;
the central processing unit judges whether the required sensing information is requested by other application programs, if not, the new sensing information requirement is transmitted to the substrate management controller and added to the sensing information requirement list.
Further, the sensing information includes one or more of fan speed information, motherboard temperature information, backplane temperature information, motherboard voltage information, and power supply voltage information.
The invention also provides a central processing unit which comprises an application program, a sensor database and a watchdog slave end;
the application program is used for registering and requesting sensing information;
the sensor database is used for storing and providing the sensing information acquired by the watchdog slave end for the application program;
the watchdog slave end is used for receiving a registration request of an application program, sending a sensing information demand and a heartbeat signal to the outside, and receiving and analyzing a heartbeat response signal containing sensing information.
Further, the watchdog slave comprises:
the registration module is used for receiving a registration request of an application program and judging whether the required sensing information is requested by other application programs;
the heartbeat module is used for sending an IPMI instruction containing the sensing information requirement according to the judgment result of the registration module and writing the acquired sensing information into the sensor database;
the database module is used for providing an interface for accessing the sensing information;
and the IPMI library is used for providing an interface for receiving and sending the IPMI package.
Further, the IPMI command containing the sensing information requirement is sent according to the judgment result of the registration module and is set through a custom command of an IPMI protocol.
The invention also provides a substrate management controller, which comprises an IPMI server and a watchdog master end;
the IPMI server is used for receiving and sending IPMI instructions;
the watchdog master terminal is used for storing and maintaining a sensing information demand list, acquiring sensing information of a corresponding sensor, and integrating and returning the acquired sensing information and a heartbeat response signal when receiving the heartbeat signal.
Further, the watchdog owner terminal comprises:
the heartbeat module is used for maintaining a sensing information demand list according to the received IPMI instruction, requesting corresponding sensing information from the sensor module, and integrating and returning the sensing information acquired by the sensor module and a heartbeat response signal when receiving a heartbeat signal;
the sensor module is used for acquiring the sensing information of the corresponding sensor according to the sensing information demand list;
and the IPMI library is used for providing an interface for receiving and sending the IPMI package.
The invention has the beneficial effects that:
the invention provides a sensing information communication method, a central processing unit and a substrate management controller, and solves the problems of unstable BMC load and excessive instantaneous load caused by overlarge request variation of the CPU side. The number of the requests periodically received by the BMC is stable and controllable, so that the overload of the BMC caused by unstable requirements is avoided, and the sensing information is integrated into the heartbeat information which is originally transmitted periodically, so that the number of packets between the BMC and the CPU is greatly reduced, and the reliability of the BMC is improved; the invention also provides a uniform data acquisition point for a plurality of application programs, and avoids bandwidth waste caused by a plurality of application programs on the CPU side respectively acquiring information.
Drawings
FIG. 1 is a schematic diagram of a prior art sensor information communication architecture;
FIG. 2 is a schematic flow chart of a sensing information communication method according to an embodiment of the present invention;
FIG. 3 is a diagram of a sensing information communication architecture according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a slave side structure of a central processing unit watchdog in an embodiment of the present invention;
FIG. 5 is a schematic diagram of a master end structure of a baseboard management controller watchdog according to an embodiment of the present invention;
FIG. 6 is a timing diagram illustrating a watchdog slave registration event according to an embodiment of the present invention;
FIG. 7 is a timing diagram illustrating the operation of the watchdog owner according to an embodiment of the present invention;
FIG. 8 is a timing diagram illustrating the reception of sensor data by a watchdog slave according to an embodiment of the present invention.
Detailed Description
In order to clearly explain the technical features of the present invention, the following detailed description of the present invention is provided with reference to the accompanying drawings. The following disclosure provides many different embodiments, or examples, for implementing different features of the invention. To simplify the disclosure of the present invention, the components and arrangements of specific examples are described below. Furthermore, the present invention may repeat reference numerals and/or letters in the various examples. This repetition is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations discussed. It should be noted that the components illustrated in the figures are not necessarily drawn to scale. Descriptions of well-known components and processing techniques and procedures are omitted so as to not unnecessarily limit the invention.
As shown in fig. 2, an embodiment of the present invention discloses a method for communicating sensor information, including:
the substrate management controller acquires the sensing information of the corresponding sensor according to a sensing information demand list stored in the substrate management controller;
when the base plate management controller receives the heartbeat signal sent by the central processing unit, the acquired sensing information and the heartbeat response signal are integrated and transmitted back to the central processing unit.
Specifically, the sensing information communication method disclosed in the embodiment of the present invention is implemented by the framework shown in fig. 3. The central processing unit comprises an application program, a sensor database and a watchdog slave terminal;
the application program is used for registering and requesting sensing information;
the sensor database is used for storing and providing the sensing information acquired by the watchdog slave end for the application program;
the watchdog slave end is used for receiving a registration request of an application program, sending a sensing information demand and a heartbeat signal to the outside, and receiving and analyzing a heartbeat response signal containing sensing information.
The substrate management controller comprises an IPMI server and a watchdog master end;
the IPMI server is used for receiving and sending IPMI instructions;
the watchdog master terminal is used for storing and maintaining a sensing information demand list, acquiring sensing information of a corresponding sensor, and integrating and returning the acquired sensing information and a heartbeat response signal when receiving the heartbeat signal.
Specifically, the structure of the watchdog slave end of the cpu is shown in fig. 4, and includes:
the registration module is used for receiving a registration request of an application program and judging whether the required sensing information is requested by other application programs;
the heartbeat module is used for sending an IPMI instruction containing the sensing information requirement according to the judgment result of the registration module, writing the acquired sensing information into the sensor database and referring to the sensor database by an application program;
the database module is used for providing an interface for accessing the sensing information;
and the IPMI library is used for providing an interface for receiving and sending the IPMI package.
The IPMI command containing the sensing information requirement is sent according to the judgment result of the registration module and is set through a user-defined command of an IPMI protocol.
The watchdog master end structure of the baseboard management controller is shown in fig. 5, and comprises:
the heartbeat module is used for maintaining a sensing information demand list according to the received IPMI instruction, requesting corresponding sensing information from the sensor module, and integrating and returning the sensing information acquired by the sensor module and a heartbeat response signal when receiving a heartbeat signal;
the sensor module is used for acquiring the sensing information of the corresponding sensor according to the sensing information demand list and providing the acquired sensing information for the heartbeat module;
and the IPMI library is used for providing an interface for receiving and sending the IPMI package.
The sensing information can be divided into three categories of fan, temperature and voltage, including fan speed information, mainboard temperature information, backboard temperature information, mainboard voltage information, power supply voltage information and the like.
Fig. 6 shows a timing diagram of a watchdog slave registration event of the present invention. The application program A sends a registration requirement to a registration module, wherein the registration requirement comprises sensing information required by the application program, the registration module checks whether the required sensing information is requested by other application programs, and if the required sensing information is not requested by other application programs, the new sensing information requirement is transmitted to the baseboard management controller and added to a sensing information requirement list. In this embodiment, taking the temperature information of the CPU as an example, when the application a wants to obtain the temperature information of the CPU, after the registration module checks that the registration module is not requested by another application, the watchdog slave heartbeat module registers to the BMC side through the ipmi _ oe _ configuration command, and after the registration, the watchdog master heartbeat module at the BMC side replies success or failure.
Fig. 7 shows a timing diagram of the operation of the watchdog master. When the watchdog owner receives the ipmi _ oem _ config command, the watchdog owner maintains and updates the locally stored demand list, and then when the watchdog owner heartbeat module receives the heartbeat signal, the watchdog owner acquires the required sensing information from the sensor module according to the list, and then integrates and transmits the sensing information back with the heartbeat response signal.
Fig. 8 shows a timing diagram of the watchdog slave receiving sensor data. And after receiving the returned heartbeat response signal, the watchdog slave terminal analyzes the carried sensor type and information, writes the result into a sensor database, periodically and continuously performs heartbeat action, and acquires related information by subscribing the sensor database when an application program needs to inquire sensing information.
Table 1ipmi _oem _configformat
Item | Item value | Description of the preferred embodiment |
NetFn | 0x3C | IPMI Netfn. |
Cmd | 0x81 | IPMI CMD. |
Byte1 | 0~7 | Specifying sensor data to be transmitted back |
TABLE 2 modified ipmi heartbeat response format
Tables 1 and 2 show two modified IPMI command formats of the embodiment of the present invention, IPMI _ OEM _ config in table 1 is used to configure sensor information that is desired to be returned by BMC, and all ranges of OEM command in IPMI 2.0 specification can be used, which are not limited to NetFn =3c and cmd =80. Table 2 is a modified heartbeat response command, the length of which can be modified according to the number of actual sensors.
Although the embodiments of the present invention have been described with reference to the accompanying drawings, the scope of the present invention is not limited thereto. Various modifications and alterations will occur to those skilled in the art based on the foregoing description. And are neither required nor exhaustive of all embodiments. On the basis of the technical scheme of the invention, various modifications or changes which can be made by a person skilled in the art without creative efforts are still within the protection scope of the invention.
Claims (5)
1. A method for communicating sensory information, comprising:
the substrate management controller acquires the sensing information of the corresponding sensor according to a sensing information demand list stored in the substrate management controller;
when the substrate management controller receives a heartbeat signal sent by the central processing unit, integrating the acquired sensing information with the heartbeat response signal and transmitting the information back to the central processing unit;
an ipmi _ oem _ config command is adopted to communicate which sensing information needs to be integrated with the heartbeat response signal;
as shown in the following table:
table 1ipmi _oem _configformat
TABLE 2 modified ipmi heartbeat response format
Tables 1 and 2 are modified two IPMI command formats, IPMI _ OEM _ config of table 1 is used to configure sensor information that is desired to be returned by BMC, and all ranges available for OEM command in IPMI 2.0 specification can be used, and are not limited to NetFn =3c, cmd =80; table 2 is a modified heartbeat response command, the length of which can be modified according to the number of actual sensors.
2. The method according to claim 1, wherein the method for maintaining the list of the demand for the sensory information comprises:
the application program of the central processing unit requests registration, and the registration information comprises the sensing information required by the application program;
the central processing unit judges whether the required sensing information is requested by other application programs, and if not, the new sensing information requirement is transmitted to the substrate management controller and added to the sensing information requirement list.
3. The method according to claim 1, wherein the sensing information comprises one or more of fan speed information, motherboard temperature information, backplane temperature information, motherboard voltage information, and power supply voltage information.
4. A central processing unit is characterized by comprising an application program, a sensor database and a watchdog slave terminal;
the application program is used for registering and requesting sensing information;
the sensor database is used for storing and providing the sensing information acquired by the watchdog slave end for the application program;
the watchdog slave end is used for receiving a registration request of an application program, sending a sensing information demand and a heartbeat signal to the outside, and receiving and analyzing a heartbeat response signal containing sensing information;
the watchdog slave end comprises:
the registration module is used for receiving a registration request of an application program and judging whether the required sensing information is requested by other application programs;
the heartbeat module is used for sending an IPMI instruction containing the sensing information requirement according to the judgment result of the registration module and writing the acquired sensing information into the sensor database;
the database module is used for providing an interface for accessing the sensing information;
the IPMI library is used for providing an interface for receiving and sending the IPMI package;
the IPMI command containing the sensing information requirements is sent according to the judgment result of the registration module, and is set through a user-defined command of an IPMI protocol, and an IPMI _ oem _ config command is adopted to communicate which sensing information needs to be integrated with the heartbeat response signal;
as shown in the following table:
table 1ipmi_oem_config format
TABLE 2 modified ipmi heartbeat response format
Tables 1 and 2 are modified two IPMI command formats, IPMI _ OEM _ config of table 1 is used to configure sensor information that is desired to be passed back by BMC, all ranges that OEM command can use in IPMI 2.0 specification are applicable, and are not limited to NetFn =3c, cmd =80; table 2 is a modified heartbeat response command, the length of which can be modified according to the number of actual sensors.
5. A base plate management controller is characterized by comprising an IPMI server and a watchdog master end;
the IPMI server is used for receiving and sending IPMI instructions;
the watchdog master terminal is used for storing and maintaining a sensing information demand list, acquiring sensing information of a corresponding sensor, and integrating and returning the acquired sensing information and a heartbeat response signal when receiving the heartbeat signal;
the watchdog owner end includes:
the heartbeat module is used for maintaining a sensing information demand list according to the received IPMI instruction, requesting corresponding sensing information from the sensor module, and integrating and returning the sensing information acquired by the sensor module and a heartbeat response signal when receiving a heartbeat signal;
the sensor module is used for acquiring the sensing information of the corresponding sensor according to the sensing information demand list;
the IPMI library is used for providing an interface for receiving and sending the IPMI package;
an ipmi _ oem _ config command is adopted to communicate which sensing information needs to be integrated with the heartbeat response signal;
as shown in the following table:
table 1ipmi _oem _configformat
TABLE 2 modified ipmi heartbeat response format
Tables 1 and 2 are modified two IPMI command formats, IPMI _ OEM _ config of table 1 is used to configure sensor information that is desired to be returned by BMC, and all ranges available for OEM command in IPMI 2.0 specification can be used, and are not limited to NetFn =3c, cmd =80; table 2 is a modified heartbeat response command, the length of which can be modified according to the number of actual sensors.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010695999.1A CN111966617B (en) | 2020-07-19 | 2020-07-19 | Sensing information communication method, central processing unit and substrate management controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010695999.1A CN111966617B (en) | 2020-07-19 | 2020-07-19 | Sensing information communication method, central processing unit and substrate management controller |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111966617A CN111966617A (en) | 2020-11-20 |
CN111966617B true CN111966617B (en) | 2023-01-06 |
Family
ID=73362441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010695999.1A Active CN111966617B (en) | 2020-07-19 | 2020-07-19 | Sensing information communication method, central processing unit and substrate management controller |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111966617B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114385458A (en) * | 2022-03-23 | 2022-04-22 | 苏州浪潮智能科技有限公司 | Sensor monitoring method and device based on event bus model |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109005226A (en) * | 2018-07-27 | 2018-12-14 | 郑州云海信息技术有限公司 | The acquisition methods of sensing data, acquisition system and relevant apparatus in server |
-
2020
- 2020-07-19 CN CN202010695999.1A patent/CN111966617B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109005226A (en) * | 2018-07-27 | 2018-12-14 | 郑州云海信息技术有限公司 | The acquisition methods of sensing data, acquisition system and relevant apparatus in server |
Also Published As
Publication number | Publication date |
---|---|
CN111966617A (en) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10606725B2 (en) | Monitor peripheral device based on imported data | |
CN107818021B (en) | Method for providing NVM subsystem to host using BMC as proxy NVMEOF discovery controller | |
USRE47289E1 (en) | Server system and operation method thereof | |
CN107832087B (en) | Self-configuring Baseboard Management Controller (BMC) | |
US10346156B2 (en) | Single microcontroller based management of multiple compute nodes | |
US8949636B2 (en) | Power efficient flow control model for USB asynchronous transfers | |
US7269534B2 (en) | Method to reduce IPMB traffic and improve performance for accessing sensor data | |
US20120254423A1 (en) | Monitoring Sensors For Systems Management | |
US20120019351A1 (en) | System and method for monitoring computer servers and network appliances | |
CN106557405B (en) | Server cabinet monitoring method | |
US9990467B2 (en) | Electronic system with health monitoring mechanism and method of operation thereof | |
CN111966617B (en) | Sensing information communication method, central processing unit and substrate management controller | |
US10298479B2 (en) | Method of monitoring a server rack system, and the server rack system | |
CN114528234B (en) | Out-of-band management method and device for multi-path server system | |
US7668941B1 (en) | Systems and methods for implementing a TCP/IP stack and web interface within a management module | |
CN112667483B (en) | Memory information reading device and method for server mainboard and server | |
CN116521378B (en) | Sensor access method and device of server and baseboard management controller | |
CN110175146B (en) | Hard disk information acquisition method and device for acquiring hard disk information | |
CN116126613A (en) | Position detection method and device of PCIe (peripheral component interconnect express) equipment, electronic equipment and storage medium | |
US11061838B1 (en) | System and method for graphics processing unit management infrastructure for real time data collection | |
CN112579507A (en) | Host machine and BMC communication method, BIOS, operating system, BMC and server | |
US6941451B2 (en) | Management subsystem and method for discovering management device functions | |
CN114356057A (en) | Method, device and equipment for controlling heat dissipation of PCIe card and storage medium | |
US10969974B2 (en) | Power-based dynamic adjustment of memory module bandwidth | |
US20230367508A1 (en) | Complex programmable logic device and communication method |
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 |