CN111061427B - 一种防止对片外flash访问导致任务周期堵塞的方法 - Google Patents

一种防止对片外flash访问导致任务周期堵塞的方法 Download PDF

Info

Publication number
CN111061427B
CN111061427B CN201911004811.8A CN201911004811A CN111061427B CN 111061427 B CN111061427 B CN 111061427B CN 201911004811 A CN201911004811 A CN 201911004811A CN 111061427 B CN111061427 B CN 111061427B
Authority
CN
China
Prior art keywords
flash
state bit
logic state
system program
program
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
CN201911004811.8A
Other languages
English (en)
Other versions
CN111061427A (zh
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.)
Ligao Shandong New Energy Technology Co ltd
Original Assignee
Ligao Shandong New Energy Technology 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 Ligao Shandong New Energy Technology Co ltd filed Critical Ligao Shandong New Energy Technology Co ltd
Priority to CN201911004811.8A priority Critical patent/CN111061427B/zh
Publication of CN111061427A publication Critical patent/CN111061427A/zh
Application granted granted Critical
Publication of CN111061427B publication Critical patent/CN111061427B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

本发明公开了一种防止对片外flash访问导致任务周期堵塞的方法,考虑到flash进行擦除、写、读操作以及通信超时的所需时间,对BMS嵌入式汽车电子的任务运行周期的影响,在发送完成操作指令后及时跳转出该段程序,不在该段程序中等待flash的操作完成,解决了任务周期堵塞问题。本发明在系统程序中设置了逻辑状态位,并与flash本身的自身状态位相结合进行判断,完成flash的操作状态的管理控制,通过对flash操作状态的管理控制,确保了任务运行周期的精准,解决了由于时序要求导致的一系列问题。

Description

一种防止对片外flash访问导致任务周期堵塞的方法
技术领域
本发明涉及嵌入式系统技术领域,尤其是一种防止对片外flash访问导致任务周期堵塞的方法。
背景技术
现有的flash存储特性决定在写之前均需要先擦除,不管是写操作还是擦除操作均需要一定的物理时间,特别是擦除操作需要的物理时间都是几十毫秒甚至上百毫秒,在通信异常情况下这个擦除操作的超时时间更长。但是,在BMS 嵌入式汽车电子上,对嵌入式软件的任务运行周期有一定要求的,对高压上电的时序也有严格的时序要求,一般的任务周期有1ms,10ms,20ms,50ms,100ms,主任务一般放在10ms周期中运行,一般误差不能超过10%,也就是10ms的任务误差只能有1ms,如果任务周期堵塞会导致操作超时上不了高压,并且在运行过程中由于故障需要在FTTI时间内到达安全状态,如果任务周期堵塞会导致不能在FTTI时间内到达安全状态,从而导致一些不可估计的后果。
现有技术中的缺点:
1、对flash进行写操作时,判断写操作完成标志位并等待完成,导致任务周期堵塞;2、对flash擦除操作时,判断擦除操作完成标志位并等待完成,导致任务周期堵塞;3、擦除操作和写操作并发进行时,所需等待完成的时间累加,导致任务周期堵塞;4、对flash进行操作时出现通信异常,超时时间等待,导致任务周期堵塞。
发明内容
为了克服上述现有技术中的缺陷,本发明提供一种防止对片外flash访问导致任务周期堵塞的方法,解决了flash的擦除、写、读操作以及通信超时对嵌入式软件的实时性影响,通过设置了逻辑状态位并与flash本身的自身状态位相结合进行判断,完成对flash操作状态的管理控制,确保了任务运行周期的精准,解决了由于时序要求导致的一系列问题。
为实现上述目的,本发明采用以下技术方案,包括:
一种防止对片外flash访问导致任务周期堵塞的方法,系统程序中设定有逻辑状态位,flash本身带有真实状态位;
对flash进行写操作时,必须先进行擦除操作,具体方式如下所以:
S11,将系统程序中的逻辑状态位赋值为EraseStatus,且当系统程序中的逻辑状态位为EraseStatus时,系统向flash发送擦除操作命令EraseCmd,若通信成功即擦除操作命令发送成功,则将系统程序中的逻辑状态位赋值为 EraseBusyStatus后并跳出该段程序循环即Break,此时flash为正在进行或等待进行擦除操作;若通信不成功即擦除操作命令未发送成功,则将系统程序中的逻辑状态位赋值为ErrorStatus后并跳出该段程序循环;
ErrorStatus表示错误状态,即表示系统程序与flash之间通信异常;
S12,若检测到flash的真实状态位表示擦除操作已完成时,且此时系统程序中的逻辑状态位为EraseBusyStatus时,则将系统程序中的逻辑状态位赋值为WriteStatus后并跳出该段程序循环;
S13,当系统程序中的逻辑状态位赋值为WriteStatus时,系统向flash发送写操作命令WriteCmd,若通信成功即写操作命令发送成功,则将系统程序中的逻辑状态位赋值为WriteBusyStatus后并跳出该段程序循环,此时flash为正在进行或等待进行写操作;若通信不成功即写操作命令未发送成功,则将系统程序中的逻辑状态位赋值为ErrorStatus后并跳出该段程序循环;
S14,若检测到flash的真实状态位表示写操作已完成时,且此时系统程序中的逻辑状态位为WriteBusyStatus时,则将系统程序中的逻辑状态位赋值为 ValidStatus后并跳出该段程序循环;
ValidStatus表示有效状态,当系统程序中的逻辑状态位为ValidStatus时,可对flash进行任意操作,即系统可向flash发送任意操作的命令,包括擦除操作、写操作、读操作。
将步骤S14替换为:若检测到flash的真实状态位表示写操作已完成时,且此时系统程序中的逻辑状态位为WriteBusyStatus时,则将系统程序中的逻辑状态位赋值为ReadStatus后并跳出该段程序循环;
ReadStatus表示读状态,当系统程序中的逻辑状态位为ReadStatus时,可对flash进行读操作,读取步骤S13过程中所写入的数据。
对flash进行读操作时,具体包括以下步骤:
S21,将系统程序中的逻辑状态位赋值为ReadStatus,且当系统程序中的逻辑状态位为ReadStatus时,系统向flash发送读操作命令ReadCmd,若通信成功即读操作命令发送成功,则将系统程序中的逻辑状态位赋值为 ReadBusyStatus后并跳出该段程序循环即Break,此时flash为正在进行或等待进行读操作;若通信不成功即读操作命令未发送成功,则将系统程序中的逻辑状态位赋值为ErrorStatus后并跳出该段程序循环;
S22,若检测到flash的真实状态位表示读操作已完成时,且此时系统程序中的逻辑状态位为ReadBusyStatus时,则将系统程序中的逻辑状态位赋值为 ValidStatus后并跳出该段程序循环。
通过spi通信方式读取flash的寄存器值,从而检测到flash的真实状态位。
本发明的优点在于:
本发明考虑到flash进行擦除、写、读操作以及通信超时的所需时间,对BMS 嵌入式汽车电子的任务运行周期的影响,在发送完成操作指令后及时跳转出该段程序,不在该段程序中等待flash的操作完成,解决了任务周期堵塞问题。本发明在系统程序中设置了逻辑状态位,并与flash本身的自身状态位相结合进行判断,完成flash的操作状态的管理控制,通过对flash操作状态的管理控制,确保了任务运行周期的精准,解决了由于时序要求导致的一系列问题。
本发明通过spi通信方式读取flash的寄存器值,从而检测flash的真实状态位,spi通信速率达到1mbps以上,读取一个字节的寄存器值需要的时间为us级别,不会影响程序运行周期。
附图说明
图1为本发明的flash进行写操作时的方法流程图。
图2为本发明的flash进行读操作时的方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种防止对片外flash访问导致任务周期堵塞的方法,在系统程序即嵌入式软件程序中设定有逻辑状态位;flash本身带有真实状态位,用于表示flash 的真实操作状态;
由图1所示,对flash进行写操作时,必须先进行擦除操作,具体方式如下所以:
S11,将系统程序中的逻辑状态位赋值为EraseStatus,且当系统程序中的逻辑状态位为EraseStatus时,系统向flash发送擦除操作命令EraseCmd,若通信成功即擦除操作命令发送成功,则将系统程序中的逻辑状态位赋值为 EraseBusyStatus后,并跳出该段程序循环即Break,即不在该段程序中等待 flash的擦除操作完成,且此时flash为正在进行或等待进行擦除操作;若通信不成功即擦除操作命令未发送成功,则将系统程序中的逻辑状态位赋值为 ErrorStatus后,并跳出该段程序循环。
ErrorStatus表示错误状态,即表示系统程序与flash之间通信异常,当通信异常时,跳出该段程序循环,不在该段程序中等待通信恢复,并且,系统程序将flash的通信故障情况上报给BMS,BMS记录故障码。
S12,若检测到flash的真实状态位表示擦除操作已完成时,且此时系统程序中的逻辑状态位为EraseBusyStatus时,则将系统程序中的逻辑状态位赋值为WriteStatus后,并跳出该段程序循环。
本发明中,通过spi通信方式读取flash的寄存器值,从而检测flash的真实状态位,spi通信速率达到1mbps以上,读取一个字节的寄存器值需要的时间为us级别,不会影响程序运行周期。
S13,当系统程序中的逻辑状态位赋值为WriteStatus时,系统向flash发送写操作命令WriteCmd,若通信成功即写操作命令发送成功,则将系统程序中的逻辑状态位赋值为WriteBusyStatus后,并跳出该段程序循环,即不在该段程序中等待flash的写操作完成,且此时flash为正在进行或等待进行写操作;若通信不成功即写操作命令未发送成功,则将系统程序中的逻辑状态位赋值为 ErrorStatus后,并跳出该段程序循环。
S14,若检测到flash的真实状态位表示写操作已完成时,且此时系统程序中的逻辑状态位为WriteBusyStatus时,则将系统程序中的逻辑状态位赋值为 ValidStatus或ReadStatus后,并跳出该段程序循环。
ValidStatus表示有效状态,当系统程序中的逻辑状态位为ValidStatus时,可对flash进行任意操作,即系统可向flash发送任意操作的命令,包括擦除操作、写操作、读操作。
ReadStatus表示读状态,当系统程序中的逻辑状态位为ReadStatus时,可对flash进行读操作,读取步骤S13过程中所写入的数据。
由图2所示,对flash进行读操作时,具体包括以下步骤:
S21,系统程序中的逻辑状态位赋值为ReadStatus,且当系统程序中的逻辑状态位为ReadStatus时,系统向flash发送读操作命令ReadCmd,若通信成功即读操作命令发送成功,则将系统程序中的逻辑状态位赋值为ReadBusyStatus 后,并跳出该段程序循环即Break,即不在该段程序中等待flash的读操作完成,且此时flash为正在进行或等待进行读操作;若通信不成功即读操作命令未发送成功,则将系统程序中的逻辑状态位赋值为ErrorStatus后,并跳出该段程序循环;
S22,若检测到flash的真实状态位表示读操作已完成时,且此时系统程序中的逻辑状态位为ReadBusyStatus时,则将系统程序中的逻辑状态位赋值为 ValidStatus后,并跳出该段程序循环。
本发明方法除适用于对片外flash进行访问,还适用于对所有非易失性存储器NVM进行访问。
以上仅为本发明创造的较佳实施例而已,并不用以限制本发明创造,凡在本发明创造的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明创造的保护范围之内。

Claims (4)

1.一种防止对片外flash访问导致任务周期堵塞的方法,其特征在于,系统程序中设定有逻辑状态位,flash本身带有真实状态位;
对flash进行写操作时,必须先进行擦除操作,具体方式如下所以:
S11,将系统程序中的逻辑状态位赋值为EraseStatus,且当系统程序中的逻辑状态位为EraseStatus时,系统向flash发送擦除操作命令EraseCmd,若通信成功即擦除操作命令发送成功,则将系统程序中的逻辑状态位赋值为EraseBusyStatus后并跳出该段程序循环即Break,此时flash为正在进行或等待进行擦除操作;若通信不成功即擦除操作命令未发送成功,则将系统程序中的逻辑状态位赋值为ErrorStatus后并跳出该段程序循环;
ErrorStatus表示错误状态,即表示系统程序与flash之间通信异常;
S12,若检测到flash的真实状态位表示擦除操作已完成时,且此时系统程序中的逻辑状态位为EraseBusyStatus时,则将系统程序中的逻辑状态位赋值为WriteStatus后并跳出该段程序循环;
S13,当系统程序中的逻辑状态位赋值为WriteStatus时,系统向flash发送写操作命令WriteCmd,若通信成功即写操作命令发送成功,则将系统程序中的逻辑状态位赋值为WriteBusyStatus后并跳出该段程序循环,此时flash为正在进行或等待进行写操作;若通信不成功即写操作命令未发送成功,则将系统程序中的逻辑状态位赋值为ErrorStatus后并跳出该段程序循环;
S14,若检测到flash的真实状态位表示写操作已完成时,且此时系统程序中的逻辑状态位为WriteBusyStatus时,则将系统程序中的逻辑状态位赋值为ValidStatus后并跳出该段程序循环;
ValidStatus表示有效状态,当系统程序中的逻辑状态位为ValidStatus时,可对flash进行任意操作,即系统可向flash发送任意操作的命令,包括擦除操作、写操作、读操作。
2.根据权利要求1所述的一种防止对片外flash访问导致任务周期堵塞的方法,其特征在于,将步骤S14替换为:若检测到flash的真实状态位表示写操作已完成时,且此时系统程序中的逻辑状态位为WriteBusyStatus时,则将系统程序中的逻辑状态位赋值为ReadStatus后并跳出该段程序循环;
ReadStatus表示读状态,当系统程序中的逻辑状态位为ReadStatus时,可对flash进行读操作,读取步骤S13过程中所写入的数据。
3.根据权利要求1或2所述的一种防止对片外flash访问导致任务周期堵塞的方法,其特征在于,对flash进行读操作时,具体包括以下步骤:
S21,将系统程序中的逻辑状态位赋值为ReadStatus,且当系统程序中的逻辑状态位为ReadStatus时,系统向flash发送读操作命令ReadCmd,若通信成功即读操作命令发送成功,则将系统程序中的逻辑状态位赋值为ReadBusyStatus后并跳出该段程序循环即Break,此时flash为正在进行或等待进行读操作;若通信不成功即读操作命令未发送成功,则将系统程序中的逻辑状态位赋值为ErrorStatus后并跳出该段程序循环;
S22,若检测到flash的真实状态位表示读操作已完成时,且此时系统程序中的逻辑状态位为ReadBusyStatus时,则将系统程序中的逻辑状态位赋值为ValidStatus后并跳出该段程序循环。
4.根据权利要求1或2或3所述的一种防止对片外flash访问导致任务周期堵塞的方法,其特征在于,通过spi通信方式读取flash的寄存器值,从而检测到flash的真实状态位。
CN201911004811.8A 2019-10-22 2019-10-22 一种防止对片外flash访问导致任务周期堵塞的方法 Active CN111061427B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911004811.8A CN111061427B (zh) 2019-10-22 2019-10-22 一种防止对片外flash访问导致任务周期堵塞的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911004811.8A CN111061427B (zh) 2019-10-22 2019-10-22 一种防止对片外flash访问导致任务周期堵塞的方法

Publications (2)

Publication Number Publication Date
CN111061427A CN111061427A (zh) 2020-04-24
CN111061427B true CN111061427B (zh) 2023-04-07

Family

ID=70297543

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911004811.8A Active CN111061427B (zh) 2019-10-22 2019-10-22 一种防止对片外flash访问导致任务周期堵塞的方法

Country Status (1)

Country Link
CN (1) CN111061427B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2950462A1 (fr) * 2009-09-21 2011-03-25 St Microelectronics Rousset Procede d'ecriture et de lecture de donnees dans une memoire non volatile, au moyen de metadonnees
JP2015049722A (ja) * 2013-09-02 2015-03-16 株式会社デンソー マイクロコンピュータ及び不揮発性メモリのブロック管理方法
CN106708441A (zh) * 2016-12-29 2017-05-24 忆正科技(武汉)有限公司 一种用于降低固态存储读延迟的操作方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI658465B (zh) * 2018-02-02 2019-05-01 華邦電子股份有限公司 記憶體裝置以及其寫入/抹除方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2950462A1 (fr) * 2009-09-21 2011-03-25 St Microelectronics Rousset Procede d'ecriture et de lecture de donnees dans une memoire non volatile, au moyen de metadonnees
JP2015049722A (ja) * 2013-09-02 2015-03-16 株式会社デンソー マイクロコンピュータ及び不揮発性メモリのブロック管理方法
CN106708441A (zh) * 2016-12-29 2017-05-24 忆正科技(武汉)有限公司 一种用于降低固态存储读延迟的操作方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
智能终端中正确高效地使用Flash的研究;赵雷等;《计算机技术与发展》;20160505(第05期);全文 *

Also Published As

Publication number Publication date
CN111061427A (zh) 2020-04-24

Similar Documents

Publication Publication Date Title
US11664077B2 (en) Nonvolatile semiconductor memory device which performs improved erase operation
CN101231618B (zh) 非易失性存储器装置的控制方法
US7164610B2 (en) Microcomputer having a flush memory that can be temporarily interrupted during an erase process
US6903980B2 (en) Nonvolatile semiconductor memory device capable of correcting over-erased memory cells
CN112667446B (zh) Mlc nand的数据备份方法、装置及闪存系统
CN111785315B (zh) 降低擦除干扰和擦除时间的方法、系统、存储介质及终端
US11003460B2 (en) Memory control circuit unit, memory storage device and control method thereof
CN106610786A (zh) 数据存储方法
US7590793B2 (en) Data access controlling method in flash memory and data access controlling program
CN111061427B (zh) 一种防止对片外flash访问导致任务周期堵塞的方法
CN103809988A (zh) 一种信息处理方法及电子设备
CN112445670B (zh) 一种eMMC测试方法和装置
EP2667382A1 (en) Erasing a non-volatile memory (NVM) system having error correction code (ECC)
US11450398B2 (en) Method of testing slave device of inter-integrated circuit bus
EP2730993B1 (en) Reset method and network device
CN110232945B (zh) 存储器装置以及其写入/擦除方法
CN111813597A (zh) 一种空调器
JP4965909B2 (ja) Icカード
CN106910520B (zh) 存储装置的写入方法、存储装置、存储控制器和存储系统
CN111651309B (zh) 计算机系统的可靠性测试方法及其系统
CN110910939B (zh) 存储单元的阈值调整方法、装置、存储设备和存储介质
CN114550802A (zh) 非易失存储器的可靠性测试方法及装置
CN112685332A (zh) 数据存储方法及存储设备
CN115132256A (zh) Nor型闪存芯片及其擦除操作控制系统和控制方法
CN112711467A (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
CB02 Change of applicant information

Address after: Room 501, No. 8, No. 300, Changjiang Road, Yantai Economic and Technological Development Zone, Yantai Area, China (Shandong) Pilot Free Trade Zone, Yantai City, Shandong Province, 264006

Applicant after: Ligao (Shandong) New Energy Technology Co.,Ltd.

Address before: Room 501, No. 8, No. 300, Changjiang Road, Economic and Technological Development Zone, Yantai City, Shandong Province, 264006

Applicant before: LIGO (Shandong) New Energy Technology Co.,Ltd.

Address after: Room 501, No. 8, No. 300, Changjiang Road, Economic and Technological Development Zone, Yantai City, Shandong Province, 264006

Applicant after: LIGO (Shandong) New Energy Technology Co.,Ltd.

Address before: 230088 1-4 / F, C2 building, Hefei National University Science Park, 800 Wangjiang West Road, high tech Zone, Hefei City, Anhui Province

Applicant before: Anhui Ligoo New Energy Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant