CN111209154A - 虚拟1553b总线设备的实现方法 - Google Patents
虚拟1553b总线设备的实现方法 Download PDFInfo
- Publication number
- CN111209154A CN111209154A CN202010009224.4A CN202010009224A CN111209154A CN 111209154 A CN111209154 A CN 111209154A CN 202010009224 A CN202010009224 A CN 202010009224A CN 111209154 A CN111209154 A CN 111209154A
- Authority
- CN
- China
- Prior art keywords
- bus
- register
- virtual
- remote terminal
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明提供了一种虚拟1553B总线设备的实现方法,包括:按照真实1553B板卡,设置供应用程序调用的API接口;通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真;编写网络调用程序,向虚拟1553B设备提供网络接入服务;通过网络调用程序,设置模拟的总线控制器和远程终端,并通过总线控制器和远程终端执行对总线指令字、数据字、状态字的计算;设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。本发明提供1553B常用数据传输机制的模拟,实现1553B总线的软件虚拟和故障注入能力,能够降低搭建测试环境的成本。
Description
技术领域
本发明涉及软件测试技术领域,具体地,涉及虚拟1553B总线设备的实现方法。
背景技术
1553B总线标准目前已经在航天、航空等多个领域取得广泛应用,真实的1553B板卡价格昂贵,基于真实1553B板卡开展的软件开发和测试需要独占相关设备,成本较高。
目前大多数真实1553B板卡在使用时,对板卡内部的运行状态和数据缺乏实时有效的管理手段,无法实现特殊硬件故障和异常通信数据的模拟,为执行异常测试用例带来了不便。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种虚拟1553B总线设备的实现方法。
根据本发明提供的一种虚拟1553B总线设备的实现方法,包括:
步骤1:按照真实1553B板卡,设置供应用程序调用的API接口;
步骤2:根据所述API接口,通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真;
步骤3:编写网络调用程序,向虚拟1553B设备提供网络接入服务;
步骤4:通过所述网络调用程序,设置模拟的总线控制器和远程终端,并通过所述总线控制器和所述远程终端执行对总线指令字、数据字、状态字的计算;
步骤5:设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。
可选地,所述步骤2中进行虚拟化的通用寄存器包括:中断屏蔽寄存器、第一配置寄存器、第二配置寄存器、起始/复位寄存器、指令堆栈指针寄存器、BC控制字/RT子地址控制字寄存器、定时标识寄存器、中断状态寄存器、第三配置寄存器、第四配置寄存器、第五配置寄存器、RT/监视器数据堆栈地址寄存器、BC帧定时保持寄存器、下一次BC消息定时器保持寄存器、BC帧定时/RT最后命令/MT触发字寄存器、RT状态字寄存器、RT比特字寄存器。
可选地,所述步骤3包括:在底层利用socket发送和接收虚拟1553B设备需要的交互数据,向虚拟1553B设备提供网络接入。
可选地,所述步骤4包括:
步骤4.1:总线控制器发出接收指令字及规定数目的数据字到远程终端,远程终端在收到消息并核实后,回发状态字给所述总线控制器;
步骤4.2:总线控制器向远程终端发出指令字,远程终端在收到所述指令字并核实后,回发状态字给所述总线控制器,并发送规定数目的数据字给总线控制器;
步骤4.3:总线控制器向接收数据的远程终端发出一个接收指令字,向发送数据的远程终端发出一个发送指令字,发送数据的远程终端收到指令字后,发出状态字及规定数目的数据字;在数据传输结束后,发送数据的远程终端和接收数据的远程终端分别向总线发出响应状态字;
步骤4.4:将接收数据的远程终端地址设置为31,以实现总线控制器向远程终端广播的功能和远程终端向远程终端广播的功能。
可选地,所述步骤5包括:
通过修改指令堆栈指针寄存器、中断状态寄存器的状态值,或者改变虚拟1553B设备中的数据流,以模拟故障发生时真实硬件设备的行为。
可选地,还包括:
步骤6:在不同设备上部署虚拟1553B总线设备,配置总线上每个节点的RT地址、RT子地址、内存基地址、寄存器基地址和中断信息。
与现有技术相比,本发明具有如下的有益效果:
本发明提供的虚拟1553B总线设备的实现方法,通过模拟1553B板卡的真实编程接口,利用本地内存模拟1553B的寄存器和存储器,提供1553B常用数据传输机制的模拟和故障注入的能力,能够降低搭建测试环境的成本,具有广泛的平台适应性和兼容性。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明提供的虚拟1553B总线设备的结构示意图;
图2为总线控制器向远程终端的传输的流程示意图;
图3为远程终端向总线控制器的传输的流程示意图;
图4为远程终端向远程终端的传输的流程示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
根据本发明提供的一种虚拟1553B总线设备的实现方法,包括:
步骤1:按照真实1553B板卡,设置供应用程序调用的API接口(ApplicationProgram Interface,应用程序接口)。
步骤2:根据API接口,通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真。
步骤3:编写网络调用程序,向虚拟1553B设备提供网络接入服务。
步骤4:通过网络调用程序,设置模拟的总线控制器和远程终端,并通过总线控制器和远程终端执行对总线指令字、数据字、状态字的计算。
步骤5:设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。
本实施例中的方法可以在不接入真实1553B板卡的情况下,完成对1553B总线的功能仿真和故障数据模拟。
在步骤1中,虚拟1553B板卡的API接口与真实1553B板卡的API接口完全一致,应用程序通过替换动态链接库的方式,不需要修改原代码,就可以实现通信介质由真实1553B设备到虚拟1553设备的转换。具体的虚拟API接口如表1所示。
表1虚拟接口列表
示例性的,步骤2中进行虚拟化的通用寄存器包括:中断屏蔽寄存器、第一配置寄存器、第二配置寄存器、起始/复位寄存器、指令堆栈指针寄存器、BC控制字/RT子地址控制字寄存器、定时标识寄存器、中断状态寄存器、第三配置寄存器、第四配置寄存器、第五配置寄存器、RT/监视器数据堆栈地址寄存器、BC帧定时保持寄存器、下一次BC消息定时器保持寄存器、BC帧定时/RT最后命令/MT触发字寄存器、RT状态字寄存器、RT比特字寄存器。
本实施例中,为实现步骤1的虚拟API接口,虚拟1553B总线使用本机内存对数据堆栈地址寄存器、中断屏蔽寄存器等17个通用寄存器的进行仿真,对堆栈空间、消息块空间等存储器进行虚拟化,对1553B总线数据传输时的控制逻辑和响应状态进行仿真。1553B总线通信行为的仿真实现了1553B总线的常用通信行为仿真,包括:BC->RT通信数据模拟、RT->RT通信数据模拟、RT->BC通信数据模拟、广播数据模拟。进一步地,1553B总线通信行为的仿真在物理层使用以太网进行数据交换和同步控制。
本实施例中,1553B板卡数据模拟不仅包括对1553B板卡的寄存器、存储器、中断等数据模拟,也包括对控制变量、逻辑数据的模拟。
示例性的,步骤3包括:在底层利用socket(类似API接口的网络端口)发送和接收虚拟1553B设备需要的交互数据,向虚拟1553B设备提供网络接入。
本实施例中,在步骤3的数据模拟基础上,使用软件模拟总线控制器、远程终端,实现对总线指令字、数据字、状态字的计算,提供虚拟1553B总线对4种常用总线通信行为的模拟能力。
图2为总线控制器向远程终端的传输的流程示意图,如图2所示,总线控制器(BC)发出接收指令字及规定数目的数据字到远程终端(RT),远程终端在收到消息并核实后,回发状态字给总线控制器。
图3为远程终端向总线控制器的传输的流程示意图,如图3所示,总线控制器(BC)向远程终端(RT)发出指令字,远程终端在收到指令字并核实后,回发状态字给总线控制器,并发送规定数目的数据字给总线控制器。
图4为远程终端向远程终端的传输的流程示意图,如图4所示,总线控制器(BC)向接收数据的远程终端(RT A)发出一个接收指令字,向发送数据的远程终端(RT B)发出一个发送指令字,发送数据的远程终端收到指令字后,发出状态字及规定数目的数据字;在数据传输结束后,发送数据的远程终端和接收数据的远程终端分别向总线发出响应状态字。
总线广播数据的传输:将接收数据的远程终端地址设置为31,以实现总线控制器向远程终端广播的功能和远程终端向远程终端广播的功能。
示例性的,步骤5包括:
通过修改指令堆栈指针寄存器、中断状态寄存器的状态值,或者改变虚拟1553B设备中的数据流,以模拟故障发生时真实硬件设备的行为。
示例性的,上述虚拟1553B总线设备的实现方法还包括:步骤6:在不同设备上部署虚拟1553B总线设备,配置总线上每个节点的RT地址、RT子地址、内存基地址、寄存器基地址和中断信息。
本发明提供的虚拟1553B总线设备的实现方法,通过模拟1553B板卡的真实编程接口,利用本地内存模拟1553B的寄存器和存储器,从而提供1553B常用数据传输机制的模拟,实现1553B总线的软件虚拟,同时提供了故障注入的能力。本发明提供的虚拟1553B总线设备具有经济实用、易于快速搭建的优点,具有广泛的平台适应性和兼容性,能够降低搭建测试环境的成本。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (6)
1.一种虚拟1553B总线设备的实现方法,其特征在于,包括:
步骤1:按照真实1553B板卡,设置供应用程序调用的API接口;
步骤2:根据所述API接口,通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真;
步骤3:编写网络调用程序,向虚拟1553B设备提供网络接入服务;
步骤4:通过所述网络调用程序,设置模拟的总线控制器和远程终端,并通过所述总线控制器和所述远程终端执行对总线指令字、数据字、状态字的计算;
步骤5:设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。
2.根据权利要求1所述的虚拟1553B总线设备的实现方法,其特征在于,所述步骤2中进行虚拟化的通用寄存器包括:中断屏蔽寄存器、第一配置寄存器、第二配置寄存器、起始/复位寄存器、指令堆栈指针寄存器、BC控制字/RT子地址控制字寄存器、定时标识寄存器、中断状态寄存器、第三配置寄存器、第四配置寄存器、第五配置寄存器、RT/监视器数据堆栈地址寄存器、BC帧定时保持寄存器、下一次BC消息定时器保持寄存器、BC帧定时/RT最后命令/MT触发字寄存器、RT状态字寄存器、RT比特字寄存器。
3.根据权利要求1所述的虚拟1553B总线设备的实现方法,其特征在于,所述步骤3包括:在底层利用socket发送和接收虚拟1553B设备需要的交互数据,向虚拟1553B设备提供网络接入。
4.根据权利要求1所述的虚拟1553B总线设备的实现方法,其特征在于,所述步骤4包括:
步骤4.1:总线控制器发出接收指令字及规定数目的数据字到远程终端,远程终端在收到消息并核实后,回发状态字给所述总线控制器;
步骤4.2:总线控制器向远程终端发出指令字,远程终端在收到所述指令字并核实后,回发状态字给所述总线控制器,并发送规定数目的数据字给总线控制器;
步骤4.3:总线控制器向接收数据的远程终端发出一个接收指令字,向发送数据的远程终端发出一个发送指令字,发送数据的远程终端收到指令字后,发出状态字及规定数目的数据字;在数据传输结束后,发送数据的远程终端和接收数据的远程终端分别向总线发出响应状态字;
步骤4.4:将接收数据的远程终端地址设置为31,以实现总线控制器向远程终端广播的功能和远程终端向远程终端广播的功能。
5.根据权利要求1所述的虚拟1553B总线设备的实现方法,其特征在于,所述步骤5包括:
通过修改指令堆栈指针寄存器、中断状态寄存器的状态值,或者改变虚拟1553B设备中的数据流,以模拟故障发生时真实硬件设备的行为。
6.根据权利要求1-5中任一项所述的虚拟1553B总线设备的实现方法,其特征在于,还包括:
步骤6:在不同设备上部署虚拟1553B总线设备,配置总线上每个节点的RT地址、RT子地址、内存基地址、寄存器基地址和中断信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010009224.4A CN111209154B (zh) | 2020-01-02 | 2020-01-02 | 虚拟1553b总线设备的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010009224.4A CN111209154B (zh) | 2020-01-02 | 2020-01-02 | 虚拟1553b总线设备的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111209154A true CN111209154A (zh) | 2020-05-29 |
CN111209154B CN111209154B (zh) | 2023-08-29 |
Family
ID=70785540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010009224.4A Active CN111209154B (zh) | 2020-01-02 | 2020-01-02 | 虚拟1553b总线设备的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111209154B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112069015A (zh) * | 2020-11-10 | 2020-12-11 | 鹏城实验室 | 指令模拟器指令执行方法、装置、终端设备以及存储介质 |
CN113485912A (zh) * | 2021-06-08 | 2021-10-08 | 北京控制工程研究所 | 一种1553b总线bc芯片通讯功能模拟方法 |
CN113901478A (zh) * | 2021-10-14 | 2022-01-07 | 北京邮电大学 | 一种通信安全验证的方法、装置、设备及存储介质 |
CN114416608A (zh) * | 2021-12-06 | 2022-04-29 | 埃夫特智能装备股份有限公司 | 基于虚拟机器人控制器总线结构的外部设备模拟平台及其模拟方法 |
CN114756492A (zh) * | 2022-03-29 | 2022-07-15 | 中国西安卫星测控中心 | 适用于多种运载器的1553b数据总线处理方法 |
CN116909894A (zh) * | 2023-07-12 | 2023-10-20 | 北京计算机技术及应用研究所 | 一种虚实融合的混合动态测试平台设计方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102938713A (zh) * | 2011-08-15 | 2013-02-20 | 中国航空工业集团公司西安飞机设计研究所 | 一种1553b数据总线测试仿真系统 |
CN105137807A (zh) * | 2015-08-12 | 2015-12-09 | 上海卫星工程研究所 | 通用全数字星务仿真平台 |
CN107219843A (zh) * | 2017-06-19 | 2017-09-29 | 哈尔滨工业大学 | 基于任意函数发生器的mil‑std‑1553b总线节点的故障信号模拟装置 |
CN107707428A (zh) * | 2017-09-29 | 2018-02-16 | 北京润科通用技术有限公司 | 一种fc‑ae‑1553总线的故障注入方法及装置 |
US10027566B1 (en) * | 2014-07-18 | 2018-07-17 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Simulation and verification system and method |
CN109818790A (zh) * | 2019-01-25 | 2019-05-28 | 上海创景信息科技有限公司 | 硬件实时模拟多通路多种类通信协议芯片系统、方法及介质 |
-
2020
- 2020-01-02 CN CN202010009224.4A patent/CN111209154B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102938713A (zh) * | 2011-08-15 | 2013-02-20 | 中国航空工业集团公司西安飞机设计研究所 | 一种1553b数据总线测试仿真系统 |
US10027566B1 (en) * | 2014-07-18 | 2018-07-17 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Simulation and verification system and method |
CN105137807A (zh) * | 2015-08-12 | 2015-12-09 | 上海卫星工程研究所 | 通用全数字星务仿真平台 |
CN107219843A (zh) * | 2017-06-19 | 2017-09-29 | 哈尔滨工业大学 | 基于任意函数发生器的mil‑std‑1553b总线节点的故障信号模拟装置 |
CN107707428A (zh) * | 2017-09-29 | 2018-02-16 | 北京润科通用技术有限公司 | 一种fc‑ae‑1553总线的故障注入方法及装置 |
CN109818790A (zh) * | 2019-01-25 | 2019-05-28 | 上海创景信息科技有限公司 | 硬件实时模拟多通路多种类通信协议芯片系统、方法及介质 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112069015A (zh) * | 2020-11-10 | 2020-12-11 | 鹏城实验室 | 指令模拟器指令执行方法、装置、终端设备以及存储介质 |
CN112069015B (zh) * | 2020-11-10 | 2021-02-23 | 鹏城实验室 | 指令模拟器指令执行方法、装置、终端设备以及存储介质 |
CN113485912A (zh) * | 2021-06-08 | 2021-10-08 | 北京控制工程研究所 | 一种1553b总线bc芯片通讯功能模拟方法 |
CN113485912B (zh) * | 2021-06-08 | 2023-12-12 | 北京控制工程研究所 | 一种1553b总线bc芯片通讯功能模拟方法 |
CN113901478A (zh) * | 2021-10-14 | 2022-01-07 | 北京邮电大学 | 一种通信安全验证的方法、装置、设备及存储介质 |
CN113901478B (zh) * | 2021-10-14 | 2024-04-16 | 北京邮电大学 | 一种通信安全验证的方法、装置、设备及存储介质 |
CN114416608A (zh) * | 2021-12-06 | 2022-04-29 | 埃夫特智能装备股份有限公司 | 基于虚拟机器人控制器总线结构的外部设备模拟平台及其模拟方法 |
CN114756492A (zh) * | 2022-03-29 | 2022-07-15 | 中国西安卫星测控中心 | 适用于多种运载器的1553b数据总线处理方法 |
CN114756492B (zh) * | 2022-03-29 | 2023-11-03 | 中国西安卫星测控中心 | 适用于多种运载器的1553b数据总线处理方法 |
CN116909894A (zh) * | 2023-07-12 | 2023-10-20 | 北京计算机技术及应用研究所 | 一种虚实融合的混合动态测试平台设计方法 |
CN116909894B (zh) * | 2023-07-12 | 2024-04-05 | 北京计算机技术及应用研究所 | 一种虚实融合的混合动态测试平台设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111209154B (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111209154B (zh) | 虚拟1553b总线设备的实现方法 | |
CN104978261A (zh) | 应用程序的测试方法、装置及系统 | |
CN113076227A (zh) | Mcu验证方法、系统和终端设备 | |
CN104750603A (zh) | 一种多核dsp软件仿真器及其物理层软件测试方法 | |
US8296119B2 (en) | Saving and restarting discrete event simulations | |
CN115184764A (zh) | 一种芯片测试方法、装置、电子设备及存储介质 | |
CA3053003A1 (en) | Generalized virtualization platform for systems using hardware abstraction software layers | |
CN108228965B (zh) | 一种存储单元的仿真验证方法、装置和设备 | |
CN112764981B (zh) | 一种协同测试系统及方法 | |
CN108075929B (zh) | 集成接口配试模拟器以及模拟方法 | |
CN113821440A (zh) | 一种VxWorks应用软件测试方法、系统及模拟器 | |
US7627462B2 (en) | Hardware simulation using a test scenario manager | |
CN114461478A (zh) | 模拟器,驱动测试方法,电子设备及计算机可读存储介质 | |
CN115168129B (zh) | 植入仿真器的自动化测试系统及ssd硬盘测试方法 | |
CN108733871B (zh) | 一种纯软件仿真总线通讯的方法 | |
CN112464502B (zh) | 优化加快存储器仿真验证方法、装置、存储介质和终端 | |
CN111897582B (zh) | 一体机以太网刷新方法、装置、存储介质及一体机设备 | |
CN113609052A (zh) | 基于fpga和微处理器的芯片模拟系统及实现方法 | |
CN116157774A (zh) | 用于在云计算环境中提供工业设备的工程的方法和系统 | |
JP5753508B2 (ja) | プログラム検証システムおよびその検証方法 | |
CN113360406B (zh) | 应用程序的JSBridge方法的测试方法及装置 | |
CN117251118B (zh) | 支持虚拟NVMe仿真与集成方法及系统 | |
CN111752680B (zh) | 基于kvm的ipc模拟方法、装置、存储介质及设备 | |
CN111966072B (zh) | 一种空调控制面板模拟测试方法和装置 | |
CN110413464B (zh) | 一种配置表项测试方法、系统 |
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 |