CN114327281B - TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium - Google Patents

TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium Download PDF

Info

Publication number
CN114327281B
CN114327281B CN202111647866.8A CN202111647866A CN114327281B CN 114327281 B CN114327281 B CN 114327281B CN 202111647866 A CN202111647866 A CN 202111647866A CN 114327281 B CN114327281 B CN 114327281B
Authority
CN
China
Prior art keywords
range
read
ssd
hardware acceleration
authority
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
CN202111647866.8A
Other languages
Chinese (zh)
Other versions
CN114327281A (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.)
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Shenzhen Union Memory Information System 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 Shenzhen Union Memory Information System Co Ltd filed Critical Shenzhen Union Memory Information System Co Ltd
Priority to CN202111647866.8A priority Critical patent/CN114327281B/en
Publication of CN114327281A publication Critical patent/CN114327281A/en
Application granted granted Critical
Publication of CN114327281B publication Critical patent/CN114327281B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application relates to a TCG software and hardware acceleration method, a device, computer equipment and a storage medium for SSD, wherein the method comprises the following steps: receiving a read-write command issued by an SSD, and acquiring command information in the read-write command; transmitting the command information to a hardware acceleration module, and returning range authority and range key information by the hardware acceleration module according to the command information; judging whether the range authority allows read-write operation or not; if yes, setting range key information, and executing the read-write command. The application is used for TCG authority management and partition encryption management through a software and hardware acceleration scheme, can reduce the delay of a core read-write data path and improve SSD performance.

Description

TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium
Technical Field
The application relates to the technical field of SSDs, in particular to a TCG software and hardware acceleration method, a device, computer equipment and a storage medium for SSDs.
Background
Currently, the mainstream SSD products need to support TCG characteristics to achieve access rights management and partition encryption management for user data. Conventional access rights management and partition encryption management are processed by software, so that the efficiency is low, and the performance is affected.
In the prior art, software maintains a range table in a system RAM, and when a new command is received, the software circularly searches the range table to confirm the corresponding range, and then determines the execution authority of the command and the encryption key selection according to range information; this software loop lookup is located in the core read-write data path, resulting in SSD performance loss.
Disclosure of Invention
The application aims to overcome the defects of the prior art and provides a TCG software and hardware acceleration method, a device, computer equipment and a storage medium for SSD.
In order to solve the technical problems, the application adopts the following technical scheme:
the TCG software and hardware acceleration method for SSD comprises the following steps:
receiving a read-write command issued by an SSD, and acquiring command information in the read-write command;
transmitting the command information to a hardware acceleration module, and returning range authority and range key information by the hardware acceleration module according to the command information;
judging whether the range authority allows read-write operation or not;
if yes, setting range key information, and executing the read-write command.
The further technical scheme is as follows: before the step of receiving the read-write command issued by the SSD and obtaining the command information in the read-write command, the method further comprises the following steps: the hardware acceleration module maintains a range table.
The further technical scheme is as follows: the command information includes a starting LBA address and a size of the LBA address space.
The further technical scheme is as follows: and transmitting the command information to a hardware acceleration module, wherein in the step of returning range authority and range key information according to the command information, the hardware acceleration module searches in parallel according to the command information to obtain range authority and range key information, and then returns the range authority and range key information.
A TCG hardware and software acceleration device for an SSD, comprising: the device comprises a receiving and acquiring unit, a transmitting and returning unit, a judging unit and a setting executing unit;
the receiving and acquiring unit is used for receiving a read-write command issued by the SSD and acquiring command information in the read-write command;
the transfer return unit is used for transferring the command information to the hardware acceleration module, and the hardware acceleration module returns range authority and range key information according to the command information;
the judging unit is used for judging whether the range authority allows read-write operation or not;
the setting execution unit is used for setting range key information and executing the read-write command.
The further technical scheme is as follows: further comprises: and the maintenance unit is used for maintaining the range table by the hardware acceleration module.
The further technical scheme is as follows: the command information includes a starting LBA address and a size of the LBA address space.
The further technical scheme is as follows: in the transfer return unit, the hardware acceleration module searches in parallel according to the command information to obtain range authority and range key information, and then returns the range authority and range key information.
A computer device comprising a memory and a processor, the memory having stored thereon a computer program, the processor implementing the TCG hardware and software acceleration method for an SSD as described above when the computer program is executed.
A storage medium storing a computer program comprising program instructions which, when executed by a processor, implement a TCG hardware and software acceleration method for an SSD as described above.
Compared with the prior art, the application has the beneficial effects that: the hardware and software acceleration scheme is used for TCG authority management and partition encryption management, so that the delay of a core read-write data path can be reduced, and SSD performance is improved.
The application is further described below with reference to the drawings and specific embodiments.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the embodiments or the description of the prior art will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a flow chart of a TCG software and hardware acceleration method for SSD according to an embodiment of the application;
FIG. 2 is a schematic diagram of a range table according to an embodiment of the present application;
FIG. 3 is a schematic block diagram of a TCG hardware and software acceleration device for SSDs provided by an embodiment of the present application;
fig. 4 is a schematic block diagram of a computer device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are some, but not all embodiments of the application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
It should be understood that the terms "comprises" and "comprising," when used in this specification and the appended claims, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It is also to be understood that the terminology used in the description of the application herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in this specification and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
It should be further understood that the term "and/or" as used in the present specification and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes such combinations.
The English explanation that the application needs to relate to is as follows:
RAM: an accessor on the SSD for running codes and storing temporary data;
LBA: logic Block Address, logical block address, for addressing when the host accesses the SSD;
range: a segment of LBA address space;
start LBA: a starting LBA address;
LBA cnt: size of LBA Address space
range rights: read-write access rights to LBA address space;
range key: encryption keys for LBA address space;
TCG: trusted Computing Group, feasible calculation.
Referring to fig. 1 to 4, wherein referring to fig. 1 to 2, the present application discloses a TCG hardware and software acceleration method for SSD, comprising the steps of:
s1, receiving a read-write command issued by an SSD, and acquiring command information in the read-write command;
wherein, before the step S1, the method further comprises: the hardware acceleration module maintains a range table. As shown in fig. 2, the range table includes the start LBA, LBA cnt, range authority, and range key information of each range.
In this embodiment, the software receives a read-write command issued by the SSD, and obtains command information in the read-write command. The software is firmware running in the SSD; the hardware acceleration module is a TCG authority access management hardware acceleration module.
In this embodiment, the command information includes a start LBA address (start LBA) and a size of an LBA address space (lbacnt).
S2, transmitting the command information to a hardware acceleration module, and returning range authority and range key information by the hardware acceleration module according to the command information;
in this embodiment, the command information is transmitted to the hardware acceleration module through the software, and the hardware acceleration module searches in parallel according to the command information to obtain range authority and range key information, and then returns the range authority and range key information to the software.
S3, judging whether the range authority allows read-write operation or not; if not, the read-write command is not executed.
And judging whether the range authority allows read-write operation or not through software.
And S4, if yes, setting range key information and executing the read-write command.
And setting range key information through software, and after executing the read-write command, finishing read-write, and then transmitting the data to a host or writing the data into an SSD.
The application is used for TCG authority management and partition encryption management through a software and hardware acceleration scheme, can reduce the delay of a core read-write data path and improve SSD performance.
Referring to fig. 3, the application also discloses a TCG hardware and software acceleration device for SSD, including: a receiving and acquiring unit 10, a transmitting and returning unit 20, a judging unit 30 and a setting executing unit 40;
the receiving and acquiring unit 10 is configured to receive a read-write command issued by the SSD and acquire command information in the read-write command;
the transfer return unit 20 is configured to transfer the command information to a hardware acceleration module, where the hardware acceleration module returns range authority and range key information according to the command information;
the judging unit 30 is configured to judge whether the range authority allows the read-write operation;
the setting execution unit 40 is configured to set range key information and execute the read/write command.
Wherein the apparatus further comprises: and the maintenance unit is used for maintaining the range table by the hardware acceleration module.
Wherein the command information includes a starting LBA address and a size of the LBA address space.
In the transfer return unit 20, the hardware acceleration module searches in parallel according to the command information to obtain range authority and range key information, and then returns the range authority and range key information.
It should be noted that, as those skilled in the art can clearly understand, the specific implementation process of the TCG hardware and software acceleration device and each unit for SSD described above may refer to the corresponding description in the foregoing method embodiment, and for convenience and brevity of description, the description is omitted here.
The TCG hardware and software acceleration apparatus for SSD described above may be implemented in the form of a computer program that can be run on a computer device as shown in fig. 4.
Referring to fig. 4, fig. 4 is a schematic block diagram of a computer device according to an embodiment of the present application; the computer device 500 may be a terminal or a server, where the terminal may be an electronic device with a communication function, such as a smart phone, a tablet computer, a notebook computer, a desktop computer, a personal digital assistant, and a wearable device. The server may be an independent server or a server cluster formed by a plurality of servers.
With reference to FIG. 4, the computer device 500 includes a processor 502, memory, and a network interface 505, connected by a system bus 501, where the memory may include a non-volatile storage medium 503 and an internal memory 504.
The non-volatile storage medium 503 may store an operating system 5031 and a computer program 5032. The computer program 5032 includes program instructions that, when executed, cause the processor 502 to perform a TCG hardware and software acceleration method for an SSD.
The processor 502 is used to provide computing and control capabilities to support the operation of the overall computer device 500.
The internal memory 504 provides an environment for the execution of a computer program 5032 in the non-volatile storage medium 503, which computer program 5032, when executed by the processor 502, causes the processor 502 to perform a TCG hardware and software acceleration method for SSD.
The network interface 505 is used for network communication with other devices. It will be appreciated by those skilled in the art that the architecture shown in fig. 4 is merely a block diagram of some of the architecture relevant to the present inventive arrangements and is not limiting of the computer device 500 to which the present inventive arrangements may be implemented, and that a particular computer device 500 may include more or fewer components than shown, or may combine some of the components, or have a different arrangement of components.
It should be appreciated that in an embodiment of the application, the processor 502 may be a central processing unit (Central Processing Unit, CPU), the processor 502 may also be other general purpose processors, digital signal processors (Digital Signal Processor, DSPs), application specific integrated circuits (Application Specific Integrated Circuit, ASICs), off-the-shelf programmable gate arrays (Field-Programmable Gate Array, FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or the like. Wherein the general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
Those skilled in the art will appreciate that all or part of the flow in a method embodying the above described embodiments may be accomplished by computer programs instructing the relevant hardware. The computer program comprises program instructions, and the computer program can be stored in a storage medium, which is a computer readable storage medium. The program instructions are executed by at least one processor in the computer system to implement the flow steps of the embodiments of the method described above.
Accordingly, the present application also provides a storage medium. The storage medium may be a computer readable storage medium. The storage medium stores a computer program, wherein the computer program comprises program instructions which, when executed by a processor, implement the TCG hardware and software acceleration method for SSD described above.
The storage medium may be a U-disk, a removable hard disk, a Read-Only Memory (ROM), a magnetic disk, or an optical disk, or other various computer-readable storage media that can store program codes.
Those of ordinary skill in the art will appreciate that the elements and algorithm steps described in connection with the embodiments disclosed herein may be embodied in electronic hardware, in computer software, or in a combination of the two, and that the elements and steps of the examples have been generally described in terms of function in the foregoing description to clearly illustrate the interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the device embodiments described above are merely illustrative. For example, the division of each unit is only one logic function division, and there may be another division manner in actual implementation. For example, multiple units or components may be combined or may be integrated into another system, or some features may be omitted, or not performed.
The steps in the method of the embodiment of the application can be sequentially adjusted, combined and deleted according to actual needs. The units in the device of the embodiment of the application can be combined, divided and deleted according to actual needs. In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit.
The integrated unit may be stored in a storage medium if implemented in the form of a software functional unit and sold or used as a stand-alone product. Based on such understanding, the technical solution of the present application is essentially or a part contributing to the prior art, or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a terminal, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application.
The foregoing embodiments are preferred embodiments of the present application, and in addition, the present application may be implemented in other ways, and any obvious substitution is within the scope of the present application without departing from the concept of the present application.

Claims (4)

1. The TCG software and hardware acceleration method for the SSD is characterized by comprising the following steps:
receiving a read-write command issued by an SSD, and acquiring command information in the read-write command;
transmitting the command information to a hardware acceleration module, and returning range authority and range key information by the hardware acceleration module according to the command information;
judging whether the range authority allows read-write operation or not;
if yes, setting range key information and executing the read-write command;
before the step of receiving the read-write command issued by the SSD and obtaining the command information in the read-write command, the method further comprises the following steps: the hardware acceleration module maintains a range table;
the range table comprises start LBA, LBA cnt, range authority and range key information of each range;
receiving a read-write command issued by an SSD through software, and acquiring command information in the read-write command; the software is firmware running in the SSD; the hardware acceleration module is a TCG authority access management hardware acceleration module;
the command information includes a starting LBA address and a size of an LBA address space;
and transmitting the command information to a hardware acceleration module, wherein in the step of returning range authority and range key information according to the command information, the hardware acceleration module searches in parallel according to the command information to obtain range authority and range key information, and then returns the range authority and range key information.
2. A TCG software and hardware accelerating device for SSD, characterized by comprising: the device comprises a receiving and acquiring unit, a transmitting and returning unit, a judging unit and a setting executing unit;
the receiving and acquiring unit is used for receiving a read-write command issued by the SSD and acquiring command information in the read-write command;
the transfer return unit is used for transferring the command information to the hardware acceleration module, and the hardware acceleration module returns range authority and range key information according to the command information;
the judging unit is used for judging whether the range authority allows read-write operation or not;
the setting execution unit is used for setting range key information and executing the read-write command;
the apparatus further comprises: the maintenance unit is used for maintaining the range table by the hardware acceleration module;
the range table comprises start LBA, LBA cnt, range authority and range key information of each range;
receiving a read-write command issued by an SSD through software, and acquiring command information in the read-write command; the software is firmware running in the SSD; the hardware acceleration module is a TCG authority access management hardware acceleration module;
the command information includes a starting LBA address and a size of an LBA address space;
in the transfer return unit, the hardware acceleration module searches in parallel according to the command information to obtain range authority and range key information, and then returns the range authority and range key information.
3. A computer device comprising a memory and a processor, the memory having stored thereon a computer program, the processor implementing the TCG hardware and software acceleration method for SSD of claim 1 when the computer program is executed.
4. A storage medium storing a computer program comprising program instructions which, when executed by a processor, implement the TCG hardware and software acceleration method for SSDs of claim 1.
CN202111647866.8A 2021-12-30 2021-12-30 TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium Active CN114327281B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111647866.8A CN114327281B (en) 2021-12-30 2021-12-30 TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111647866.8A CN114327281B (en) 2021-12-30 2021-12-30 TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN114327281A CN114327281A (en) 2022-04-12
CN114327281B true CN114327281B (en) 2023-12-05

Family

ID=81017762

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111647866.8A Active CN114327281B (en) 2021-12-30 2021-12-30 TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114327281B (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012148812A2 (en) * 2011-04-29 2012-11-01 Lsi Corporation Encrypted transport solid-state disk controller
WO2013101353A1 (en) * 2011-12-30 2013-07-04 Sandisk Technologies Inc. Host device and method for partitioning attributes in a storage device
CN103558994A (en) * 2013-09-29 2014-02-05 记忆科技(深圳)有限公司 Method for encrypting solid state disk partitions and solid state disk
CN104951405A (en) * 2014-03-28 2015-09-30 三星电子株式会社 Storage system and method for performing and authenticating write-protection thereof
CN108572797A (en) * 2018-03-07 2018-09-25 深圳忆联信息系统有限公司 A kind of solid state disk reading performance accelerated method
CN110232034A (en) * 2018-03-05 2019-09-13 三星电子株式会社 Host system and its method and accelerating module
CN113031863A (en) * 2021-03-19 2021-06-25 深圳忆联信息系统有限公司 SSD command correlation management method and device, computer equipment and storage medium
CN113113068A (en) * 2020-01-10 2021-07-13 三星电子株式会社 Memory controller and memory device including the same
CN113407110A (en) * 2020-03-17 2021-09-17 爱思开海力士有限公司 Controller and memory system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102567140B1 (en) * 2017-11-24 2023-08-16 삼성전자주식회사 Method of managing data and storage device performing the same

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012148812A2 (en) * 2011-04-29 2012-11-01 Lsi Corporation Encrypted transport solid-state disk controller
WO2013101353A1 (en) * 2011-12-30 2013-07-04 Sandisk Technologies Inc. Host device and method for partitioning attributes in a storage device
CN103558994A (en) * 2013-09-29 2014-02-05 记忆科技(深圳)有限公司 Method for encrypting solid state disk partitions and solid state disk
CN104951405A (en) * 2014-03-28 2015-09-30 三星电子株式会社 Storage system and method for performing and authenticating write-protection thereof
CN110232034A (en) * 2018-03-05 2019-09-13 三星电子株式会社 Host system and its method and accelerating module
CN108572797A (en) * 2018-03-07 2018-09-25 深圳忆联信息系统有限公司 A kind of solid state disk reading performance accelerated method
CN113113068A (en) * 2020-01-10 2021-07-13 三星电子株式会社 Memory controller and memory device including the same
CN113407110A (en) * 2020-03-17 2021-09-17 爱思开海力士有限公司 Controller and memory system
CN113031863A (en) * 2021-03-19 2021-06-25 深圳忆联信息系统有限公司 SSD command correlation management method and device, computer equipment and storage medium

Also Published As

Publication number Publication date
CN114327281A (en) 2022-04-12

Similar Documents

Publication Publication Date Title
CN111221476B (en) Front-end command processing method and device for improving SSD performance, computer equipment and storage medium
EP3057272B1 (en) Technologies for concurrency of cuckoo hashing flow lookup
KR101529811B1 (en) Systems and methods for managing endian mode of a device
US11294675B2 (en) Writing prefetched data into intra-core caches of cores identified by prefetching instructions
US20200364080A1 (en) Interrupt processing method and apparatus and server
US10657052B2 (en) Information handling system with priority based cache flushing of flash dual in-line memory module pool
WO2023051282A1 (en) Embedded vector prefetching method, apparatus and system, and related device
CN114860329A (en) Dynamic consistency biasing configuration engine and method
CN110851474A (en) Data query method, database middleware, data query device and storage medium
US10216634B2 (en) Cache directory processing method for multi-core processor system, and directory controller
CN110781107B (en) Low-delay fusion IO control method and device based on DRAM interface
CN113064919B (en) Data processing method, data storage system, computer device and storage medium
JP6944576B2 (en) Cache device, instruction cache, instruction processing system, data processing method, data processing device, computer-readable storage medium and computer program
CN114327281B (en) TCG software and hardware acceleration method and device for SSD, computer equipment and storage medium
US20090138633A1 (en) Computer, external storage and method for processing data information in external storage
CN116610262A (en) Method, device, equipment and medium for reducing SSD sequential reading delay
CN114785662B (en) Storage management method, device, equipment and machine-readable storage medium
CN110825326A (en) Method and device for improving SSD random reading performance, computer equipment and storage medium
US6401151B1 (en) Method for configuring bus architecture through software control
CN116670661A (en) Cache access method of graphics processor, graphics processor and electronic device
CN108664417B (en) Directory updating method and device
CN113515232B (en) Method, device, computer equipment and storage medium for improving SSD low order depth reading performance
US6425029B1 (en) Apparatus for configuring bus architecture through software control
CN111125715A (en) TCG data processing acceleration method and device based on solid state disk, computer equipment and storage medium
CN112445413A (en) Data storage method and device and related equipment

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